sql排序问题 受累帮忙!! 在线等

tss1011 2008-01-03 03:03:00
这是一个查询出的结果集

memo a b c

Assets 0 0 0
Number of clients 0 0 0
Number of deals 0 0 0
Revs 0 0 0
Sales 0 0 0


现在想要结果是这个样子的

memo a b c

Number of clients 0 0 0
Number of deals 0 0 0
Assets 0 0 0
Sales 0 0 0
Revs 0 0 0



除了用union all的方法 用排序能实现么?? 高手帮忙解决 谢谢
...全文
133 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
pastbee 2008-01-03
  • 打赏
  • 举报
回复
提问一塌糊涂,什么问题?说清楚
dobear_0922 2008-01-03
  • 打赏
  • 举报
回复
不过问题要是结果是这样怎么办呢?

order   by   (case memo when   'Number of clients'   then   2 
when 'Number of deals' then 1
when 'Assets' then 3
when 'Sales' then 4
when 'Revs' then 5
else 6 end
)
Lexi Meng 2008-01-03
  • 打赏
  • 举报
回复
不知所云!!
tss1011 2008-01-03
  • 打赏
  • 举报
回复
不过问题要是结果是这样怎么办呢?


memo a b c

Number of deals 0 0 0
Number of clients 0 0 0
Assets 0 0 0
Sales 0 0 0
Revs 0 0 0

tss1011 2008-01-03
  • 打赏
  • 举报
回复
按列的长度倒也是个好方...谢了
ojuju10 2008-01-03
  • 打赏
  • 举报
回复

select * from tb
order by (case when memo='Number of clients' then 1
when memo='Number of deals' then 2
when memo='Assets' then 3
when memo='Sales' then 4
when memo='Revs' then 5
else 6 end
) asc
you_tube 2008-01-03
  • 打赏
  • 举报
回复
你的排序规则 是什么???
一者仁心 2008-01-03
  • 打赏
  • 举报
回复


declare @tab table
(
a varchar(200),
b int,
c int
)
insert into @tab select 'assets' ,0,0
union all select 'Number of c',0,0
union all select 'Number of d',0,0
union all select 'revs',0,0
union all select 'sales',0,0


select * from @tab order by substring(a,4,1)



取巧了
jackyerror 2008-01-03
  • 打赏
  • 举报
回复
讲清楚你想要的排序规则先
tss1011 2008-01-03
  • 打赏
  • 举报
回复
高手都去哪了啊....5555
sunhonglei2004 2008-01-03
  • 打赏
  • 举报
回复
没有看出为你的排序规则是什么,难道是memo列的长度?

select * from tb order by len(memo) desc
dobear_0922 2008-01-03
  • 打赏
  • 举报
回复
order by len(memo) desc

34,837

社区成员

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

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