name mon tues wend thu fri sat sun
aa 1 1 1 0 0 0 0
b 1 1 0 0 0 0 0现在要求查询结果如下:
id name weekday
1 aa 2
2 aa 3
3 aa 4
4 b 2
5 b 3
weekday就是取周几对应的数
解决方案 »
- 统计各状态条目数求助
- mysql 存储过程和触发器 都报错了
- postgres 批处理调用存储过程
- Lock wait timeout exceeded; try restarting transaction
- 求一个统计数据库 所有表的记录条数的总和的语句(mysql)或者其他方法
- memo为何存不进去内容
- 请问有没有好用点的工具可对mysql在Windows底下操作,向sqlserver一样?
- 简单问题,求一条sql,谢谢
- 真的搞不懂啊!(200分)
- 为什么有图形管理界面(如phpMyAdmin)还要学DOS界面下去操作数据库?
- mysql数据库对日期操作,急!急!急!急!路过的高手帮忙看看啊
- 新手提问,Mysql读取excel的方式
ELSE '' END
) AS WEEKDAY FROM aaa1 GROUP BY NAME
UNION
SELECT NAME,(CASE WHEN tues=1 THEN 3
ELSE '' END
) AS WEEKDAY FROM aaa1 GROUP BY NAME
UNION
SELECT NAME,(CASE WHEN wend=1 THEN 4
ELSE '' END
) AS WEEKDAY FROM aaa1 GROUP BY NAME
UNION
SELECT NAME,(CASE WHEN thu=1 THEN 5
ELSE '' END
) AS WEEKDAY FROM aaa1 GROUP BY NAME
UNION
SELECT NAME,(CASE WHEN fri=1 THEN 6
ELSE '' END
) AS WEEKDAY FROM aaa1 GROUP BY NAME
UNION
SELECT NAME,(CASE WHEN sat=1 THEN 7
ELSE '' END
) AS WEEKDAY FROM aaa1 GROUP BY NAME
UNION
SELECT NAME,(CASE WHEN sun=1 THEN 1
ELSE '' END
) AS WEEKDAY FROM aaa1 GROUP BY NAME) AS bb WHERE bb.weekday <>''
ORDER BY bb.name
不知道如何合并。。
select *,weekday(aweek)+2 from (
select name,mon as aweek from tt
union
select name,tues from tt
union
select name,wend from tt
union
select name,thu from tt
union
select name,fri from tt
union
select name,sat from tt
union
select name,sun from tt) a where aweek<>0