数据排序问题
我有个日期字段,'开单日期' (年-月-日)
排序方式如下:
select * form 表 order by '开单日期'
但结果只按年排序!没有进一步按月,日排序,这是为什么?
问题点数:20、回复次数:9Top
1 楼wzh1215(懒猫)回复于 2003-12-02 07:47:06 得分 2
select * from 表 order by convert(datetime,'开单日期')Top
2 楼txlicenhe(马可)回复于 2003-12-02 08:12:39 得分 2
select * form 表 order by '开单日期'
但结果只按年排序!没有进一步按月,日排序,这是为什么?
你的写法应该是对的。不应该不进一步排啊.Top
3 楼mmaicow(mw)回复于 2003-12-02 08:50:28 得分 0
我也不知道为什么,开单日期确实是datatime类型,但就是没有排序,这是为什么呢?Top
4 楼xhwly(wly)回复于 2003-12-02 08:52:13 得分 2
你的"開單日期"是用的字符型吧!在字符型的比較中 '2003-6-1' > '2003-12-1' ,如果是這樣用以下語句:
select * from 表 order by convert(datetime,'开单日期')
Top
5 楼zjcxc(邹建)回复于 2003-12-02 08:55:33 得分 10
--试试
select * form 表 order by 开单日期Top
6 楼zjcxc(邹建)回复于 2003-12-02 08:56:24 得分 0
--是否楼主的日期字段为字符型,如果是的话,改用下面的试试:
select * form 表 order by cast(开单日期 as datetime)
Top
7 楼pengdali()回复于 2003-12-02 08:57:56 得分 2
select * form 表 order by 开单日期
如果你的开单日期不是datetime:
select * form 表 order by cast(开单日期 as datetime)Top
8 楼LoveSQL(努力奋斗ing)回复于 2003-12-02 09:00:02 得分 2
select * from 表 order by cast(开单日期 as datetime)
Top
9 楼mmaicow(mw)回复于 2003-12-02 23:58:55 得分 0
我不应该加 ''引号,问题解决!谢谢大家!Top




