Нов за PostgreSQL, но много добре запознат с негоT-SQL. Трябва да напиша две много прости заявки, които връщат най-старите и най-новите дати от дата_колона в таблицата. Date_column е в TEXT формат "mm / dd / yyyy" (просто е). Опитвам се да направя това в PostgreSQL, като използвам предварително познанията си от T-SQL. За най-новата дата тази заявка правилно ми дава отговор:
select date_column
from my_table
order by date(date_column) desc limit 1;
Въпреки това, промяната на заявката чрез промяна на "desc" на "asc" или изцяло премахване на квалификатора ми дава същия отговор като най-новата дата.
Какво става тук? Чувствам се, въпреки че получих верния отговор за най-новата дата, синтаксисът е неправилен подход. Date_column има много различни стойности, така че това не е случай, че аз съм пренебрегнал това. има еволюирал оттогава :)
Наздраве за всяка помощ предварително.
Отговори:
0 за отговор № 1Това трябва да работи:
select date_column
from stringdates
order by to_date(date_column, "MM/DD/YYYY") desc limit 1;
select date_column
from stringdates
order by to_date(date_column, "MM/DD/YYYY") limit 1;
виждам SQLFiddle
можете също да проверите тези документи