加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

sql-在同一表上有4个查询,更好的方法?

发布时间:2021-01-28 16:23:32 所属栏目:MySql教程 来源:网络整理
导读:目前,我正在执行一个查询,其中包含3个子查询, 所有查询都在同一张表上, 所有查询都有不同的where子句 我曾考虑过要进行小组合作,但这会破坏SUM() 这是查询 SELECT SUM(club) AS club,(SELECT COUNT(id) FROM action_6_members WHERE SUBSTR(CODE,1,1) = '9')

目前,我正在执行一个查询,其中包含3个子查询,
所有查询都在同一张表上,
所有查询都有不同的where子句

我曾考虑过要进行小组合作,但这会破坏SUM()

这是查询

SELECT SUM(club) AS club,(SELECT COUNT(id) FROM action_6_members WHERE SUBSTR(CODE,1,1) = '9') AS 5pts,1) = 'A') AS 10pts,1) NOT IN('9','A')) AS General
FROM action_6_members;

这是解释

id  select_type  table             type  rows  Extra        
1   PRIMARY      action_6_members  ALL   1471               
4   SUBQUERY     action_6_members  ALL   1471  Using where  
3   SUBQUERY     action_6_members  ALL   1471  Using where  
2   SUBQUERY     action_6_members  ALL   1471  Using where  
最佳答案 采用:

SELECT SUM(club) AS club,SUM(CASE WHEN SUBSTR(CODE,1) = '9' THEN 1 ELSE 0 END) AS 5pts,1) = 'A' THEN 1 ELSE 0 END) AS 10pts,'A') THEN 1 ELSE 0 END) AS General
  FROM action_6_members;

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读