这个select语句该如何写?

gencheng 2004-08-05 01:20:21
有一个表,只有一个字段:所属期。表中记录如下:

2004年第一期
2004年第二期
2004年第三期
2004年第四期
2004年第一期
2004年第二期
2004年第三期
2004年第一期
2004年第一期
2004年第二期
2004年第一期
2004年第四期
2004年第一期
2004年第一期
2004年第二期
2004年第一期
2004年第三期
2004年第一期
2004年第一期
2004年第一期

如何得到期如下排序结果:
2004年第一期
2004年第二期
2004年第三期
2004年第四期

我用:
select distinct 所属期 from 表
结果不正确!
...全文
118 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
fxcl2006 2004-08-05
  • 打赏
  • 举报
回复
select * from [table]
group by [所属期]
order by case substring(所属期,7,1)
when '二' then 2
when '三' then 3
when '四' then 4
when '一' then 1
end
sankis 2004-08-05
  • 打赏
  • 举报
回复
select distinct 所属期 from 表
order by case substring(所属期,7,1)
when '二' then 2
when '三' then 3
when '四' then 4
when '一' then 1 end
gencheng 2004-08-05
  • 打赏
  • 举报
回复
知道了,主要问题是中文排序.结帖!
gencheng 2004-08-05
  • 打赏
  • 举报
回复
select distinct 所属期 from 表
order by case substring(所属期,7,1)
when '二' then 2
when '三' then 3
when '四' then 4
when '一' then 1 end

这句不能执行,有错误!
songyangaaron 2004-08-05
  • 打赏
  • 举报
回复
按中文排序当然不对了,把“一二三四”换成“1234”或者另加一个数字列
newdongkui 2004-08-05
  • 打赏
  • 举报
回复
select distinct 所属期 from 表
order by case substring(所属期,7,1)
when '二' then 2
when '三' then 3
when '四' then 4
when '一' then 1 end
newdongkui 2004-08-05
  • 打赏
  • 举报
回复
select distinct 所属期 from 表
order by case substring(所属期,7,1)
when '二' then 2
when '三' then 3


gencheng 2004-08-05
  • 打赏
  • 举报
回复
select distinct 所属期 from 表 group by 所属期 结果为:

2004年第二期
2004年第三期
2004年第四期
2004年第一期

排序结果也不对!
梅青松 2004-08-05
  • 打赏
  • 举报
回复
select distinct 所属期 from 表 group by 所属期
WangZWang 2004-08-05
  • 打赏
  • 举报
回复
select distinct 所属期 from 表

消除重复列,有何不对? 除非如
2004年第一期和2004年第一 期不等,即其中一行
多了字符
gencheng 2004-08-05
  • 打赏
  • 举报
回复
select distinct 所属期 from 表 order by 所属期 结果为:

2004年第二期
2004年第三期
2004年第四期
2004年第一期

排序不对!
victorycyz 2004-08-05
  • 打赏
  • 举报
回复
select distinct 所属期 from 表 order by 所属期

34,873

社区成员

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

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