→→求一sql语句,关于日期转换的←←

hellofellow 2003-10-17 01:44:26
表中的保存日期的字段为sDate,但类型为varchar的
我想在用sql语句输出时对它按日期前后进行排序,如何实现???
这是我的sql语句,但排序混乱
sql="select * from kadesign order by sDate asc"
如何在sql中将varchar转换为datetime或用其他方法解决即可!!!


高手给出正确的语句,谢谢了,先
...全文
22 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
5isoft 2003-11-26
  • 打赏
  • 举报
回复
mark
zjcxc 元老 2003-10-17
  • 打赏
  • 举报
回复
--当然,为了安全起见,你最好先判断是否可以转换为日期,再处理:


sql="select * from kadesign order by case isdate(sDate) when 1 then cast(sDate as datetime) else '1900-01-01' end asc"
zjcxc 元老 2003-10-17
  • 打赏
  • 举报
回复
--将字符开转换为日期型再排序就可以了.

sql="select * from kadesign order by cast(sDate as datetime) asc"
zhbname 2003-10-17
  • 打赏
  • 举报
回复
以上两者都行
gmlxf 2003-10-17
  • 打赏
  • 举报
回复
select *,cast(sDate as datetime) t from kadesign order by t
gmlxf 2003-10-17
  • 打赏
  • 举报
回复
select * from kadesign order by cast(isNull(sDate,'') as datetime)
sdhdy 2003-10-17
  • 打赏
  • 举报
回复
将sdate转化为DateTime类型
也可用:convert(datetime,sDate)
yujohny 2003-10-17
  • 打赏
  • 举报
回复
那你最好把日期sdate改为DateTime,然后进行排序
select * from kadesign order by cast(sDate as datetime)

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧