标题:以文本类型保存的日期,在排序是如何按升序进行排序???
取消只看楼主
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
结帖率:100%
 问题点数:0 回复次数:4 
以文本类型保存的日期,在排序是如何按升序进行排序???
我的数据库MYDATE字段是以文本型的形式保存日期(****年*月)的,在进行按升序进行排序时,10月、11月、12月排在1月的上面,而不是排在9月的下面,但我又不想更改MYDATE字段的数据类型为 datetime ,在这种情况下如何才能实现排序是按升序进行排序的???
SqlCommand cmdSel = new SqlCommand("select mydate,max(case Wjlx when 1 then wjlj else '' end) as N'A',max(case Wjlx when 2 then wjlj else '' end) as N'AA',max(case Wjlx when 3 then wjlj else '' end) as N'AAA',max(case Wjlx when 4 then wjlj else '' end) as N'AAAA' from baobiao group by mydate", conn1); //创建DataAdapter(数据适配器)

da1.SelectCommand = cmdSel;



搜索更多相关主题的帖子: 文本 数据库 类型 case max 
2007-03-22 16:04
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
得分:0 
谢谢!但加了上述语句上去,还是10月、11月、12月排在1月的上面,是不是因为数据表的MYDATE字段的数据类型是 文本 而不是 日期 导致的???
SqlCommand cmdSel2 = new SqlCommand("select mydate,max(case Wjlx when 1 then wjlj else '' end) as N'A',max(case Wjlx when 2 then wjlj else '' end) as N'AA',max(case Wjlx when 3 then wjlj else '' end) as N'AAA',max(case Wjlx when 4 then wjlj else '' end) as N'AAAA' from baobiao where MYDATE LIKE '%2006%' group by mydate order by case when len(mydate) = 9 then left(mydate,6)+'0'+ right(mydate,3) else mydate end", conn1); //创建DataAdapter(数据适配器)

da1.SelectCommand = cmdSel2;


[此贴子已经被作者于2007-3-22 17:48:51编辑过]


我是2.0超级菜鸟,请多多教导!
2007-03-22 17:47
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
得分:0 
谢谢!经测试:
用 order by case when len(mydate) = 9 then left(mydate,6)+'0'+ right(mydate,3) else mydate end 不行!

用 order by case when len(mydate) = 7 then left(mydate,5)+'0'+ right(mydate,2) else mydate end 就解决这个问题了。

如此说来, 岂不是 汉字 不是 按双字节的,而是按单字节的 ???




我是2.0超级菜鸟,请多多教导!
2007-03-23 09:28
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
得分:0 

还有一个问题请教:如果是以下形式的字段(按字段内容的 最后四位数 进行排序),应该如何进行升序排列啊?谢谢!



我是2.0超级菜鸟,请多多教导!
2007-03-26 17:26
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
得分:0 
谢谢!可行!

我是2.0超级菜鸟,请多多教导!
2007-03-27 12:54



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-125926-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027876 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved