如何最早按日期对数据进行排序

时间:2019-05-12 15:33:14

标签: sql

我在数据库中的数据格式为YY / MM / DD,例如12/05/19。 我需要最早对数据进行排序,并且应该以DD / MM / YYYY格式返回。

我做了这样的事情:

select ocena,to_char(data,'DD/MM/YYYY') datka 
from ocena 
order by to_char(data,'YYYY')

,但仅在一年内排序。我需要增加几天和几个月的时间。 to_char(data,'DD/MM/YYYY')的排序无效。

enter image description here

数据

enter image description here

1 个答案:

答案 0 :(得分:1)

只需按原始列而不是表达式进行排序:

select ocena,
       to_char(o.data, 'DD/MM/YYYY') as datka 
from ocena o
order by o.data;

我建议使用表别名来明确指出order by列是中的值,而不是由列别名定义的。