求大佬帮助!一个SQL语句不会写!

verphan 2017-11-07 08:19:07
如图,之前没学过数据库,只会写最简单的SQL,这个不会写,希望前辈多多指教!!图有点渣,请凑合着看..
...全文
197 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
verphan 2017-11-07
  • 打赏
  • 举报
回复
引用 5 楼 sinat_28984567 的回复:
明白了,十分感谢!!
二月十六 2017-11-07
  • 打赏
  • 举报
回复
引用 4 楼 guohanma 的回复:
[quote=引用 3 楼 sinat_28984567 的回复:] ...
好的,还有一点想问,date两边为什么加上'[]'呢?[/quote] 奥这个是关键字的问题,其实不加也没问题,mssql中date是关键字
verphan 2017-11-07
  • 打赏
  • 举报
回复
引用 3 楼 sinat_28984567 的回复:
...
好的,还有一点想问,date两边为什么加上'[]'呢?
二月十六 2017-11-07
  • 打赏
  • 举报
回复
引用 2 楼 guohanma 的回复:
[quote=引用 1 楼 sinat_28984567 的回复:] ...
前辈,你这个语句要在哪里执行?我在navicat for mysql执行不了...[/quote] 就执行
SELECT  [date] ,
        SUM(CASE WHEN result = 'win' THEN 1
                 ELSE 0
            END) AS win,
        SUM(CASE WHEN result = 'lose' THEN 1
                 ELSE 0
            END) AS lose
FROM    #T
GROUP BY [date]
把#T换成你的表名
verphan 2017-11-07
  • 打赏
  • 举报
回复
引用 1 楼 sinat_28984567 的回复:
...
前辈,你这个语句要在哪里执行?我在navicat for mysql执行不了...
二月十六 2017-11-07
  • 打赏
  • 举报
回复
--测试数据
if not object_id(N'Tempdb..#T') is null
drop table #T
Go
Create table #T([date] Date,[result] nvarchar(24))
Insert #T
select '2005-05-09',N'win' union all
select '2005-05-09',N'lose' union all
select '2005-05-09',N'lose' union all
select '2005-05-09',N'win' union all
select '2005-05-10',N'win' union all
select '2005-05-10',N'lose' union all
select '2005-05-10',N'lose'
Go
--测试数据结束
SELECT [date] ,
SUM(CASE WHEN result = 'win' THEN 1
ELSE 0
END) AS win,
SUM(CASE WHEN result = 'lose' THEN 1
ELSE 0
END) AS lose
FROM #T
GROUP BY [date]




56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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