今晚写了个mysql语句

这篇博客探讨了如何使用MySQL进行复杂的数据聚合,包括利用ANY_VALUE、CASE语句进行条件转换,GROUP_CONCAT整合标签,以及LEFT JOIN和FIND_IN_SET函数处理多对多关系。通过示例查询,展示了分析用户问题、学期、年级和性别的方法,揭示了数据查询的有趣之处。
摘要由CSDN通过智能技术生成

SELECT any_value(q.question_id) questionId,
any_value(( CASE `subject` WHEN 0 THEN '语文' WHEN 1 THEN '数学' WHEN 2 THEN '外语' ELSE '其他' END ))subject,
any_value(g.grade_name) gradeName,
any_value((CASE WHEN q.grade_id<=6 THEN '小学' WHEN q.grade_id>6 AND q.grade_id<=10 THEN '初中' 
WHEN q.grade_id>10 AND q.grade_id<=13 THEN '高中' WHEN q.grade_id>13 AND q.grade_id<=17 THEN "大学"
WHEN q.grade_id>17 THEN "成人考试" ELSE '其他' END)) peroidName,
any_value(CASE term WHEN 0 THEN "上学期" WHEN 1 THEN "下学期" ELSE "全部" END) termName,
GROUP_CONCAT(l.label_name) labelNames,
any_value(q.crt_time) createTime,
any_value(UNIX_TIMESTAMP(q.crt_time)) code,
any_value(fm.member_nick_name) userName
FROM lj_eb_question q
LEFT JOIN lj_eb_grade g ON q.grade_id=g.grade_id
LEFT JOIN lj_eb_label l

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值