SQL 怎么按时间排列

A表里面的字段金额厂商时间781万达2014-05-0523:59:00.000177万达2014-08-1823:59:00.000111啊啊2014-06-1823:... A表里面的字段
金额 厂商 时间

781 万达 2014-05-05 23:59:00.000
177 万达 2014-08-18 23:59:00.000
111 啊啊 2014-06-18 23:59:00.000
222 亲亲 2014-06-18 23:59:00.000
要求变成按时间排序: 厂商 时间5月 时间6月 时间7月 时间8月
万达 781 0 0 177
啊啊 0 111 0 0
亲亲 0 222 0 0
那位大哥大姐帮忙看看要怎么写SQL语句能到达这样的显示效果,在这里先谢谢了!
展开
 我来答
匿名用户
2014-12-18
展开全部
将字段依次写在order by 后面即可 , 中间用逗号隔开
select * from 表 order by time , name
select * from 表 order by time asc , name asc
select * from 表 order by time desc , name desc
select * from 表 order by time asc , name desc
select * from 表 order by time desc , name asc
(注: asc 表示升序 , desc表示降序 , 未明确写明排序方式时默认是升序 )
longrenyingdc8ecb1
2014-12-18 · TA获得超过1万个赞
知道大有可为答主
回答量:6032
采纳率:82%
帮助的人:2364万
展开全部
你什么数据库?oracle还是sql server,二者截取时间的方式不同,写法也不同。这样,我大概说下思路,剩下的自己按照思路写就可以了。(我按照oracle的写法来说的)
(1)截取时间字段到月,最好将时间字段变为字符的,比如2014-05-05 23:59:00.000 截取为201405,,
(2)利用case when 将金额分化。比如 case when to_char(时间,'yyyymm')='201405' then 金额 else 0 end 时间5月,case when to_char(时间,'yyyymm')='201406' then 金额 else 0 end 时间6月,case when to_char(时间,'yyyymm')='201407' then 金额 else 0 end 时间7月,case when to_char(时间,'yyyymm')='201408' then 金额 else 0 end 时间8月
(3)再利用厂商group by即可。
我写一个oracle的,如果是sql server的,那么你自己想想,大概意思差不多。
select 厂商,sum(case when to_char(时间,'yyyymm')='201405' then 金额 else 0 end) 时间5月,sum(case when to_char(时间,'yyyymm')='201406' then 金额 else 0 end) 时间6月,sum(case when to_char(时间,'yyyymm')='201407' then 金额 else 0 end) 时间7月,sum(case when to_char(时间,'yyyymm')='201408' then 金额 else 0 end) 时间8月 from A group by 厂商
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
推荐于2016-10-27
展开全部
select 厂商,
sum(case when 时间=to_date('05',MM) then 金额 end)as 时间5月,
sum(case when 时间=to_date('06',MM) then 金额 end)as 时间6月,
sum(case when 时间=to_date('07',MM) then 金额 end)as 时间7月,
sum(case when 时间=to_date('08',MM) then 金额 end)as 时间8月
from A表
group by 厂商

祝生活愉快,望采纳哦O(∩_∩)O~
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-12-18
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式