mysql - sql合并成格以选择案例

标签 mysql sql sql-server select case

我有 2 个表,想要从 2 个有条件的表中获取行总和 结果是这样的,例如 sh2 : 19 + 5 + 11 + 5 = 40 对于每个名称将它们全部计算在表中 我使用该代码

select name, sum(total) total from 
(select name, sum(coalesce(sk,ss)) total
 from table1
 group by name
 union all
 select name, sum(coalesce(sk,ss)) total
 from table2
 group by name
) t
group by name

但我想对该代码使用 select 和 case

最佳答案

select name,SUM(total)total from(
      select name,sum(case when sk>0 then sk else ss end )total from majale group by name
      union all
      select name,sum(case when sk>0 then sk else ss end )from ketab group by name
      union all
      select name,sum(case when sk>0 then sk else ss end )from savabegh group by name
      )t
      group by name

关于mysql - sql合并成格以选择案例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43202691/

相关文章:

sql - 是将两个字段连接在一起更好,还是将它们分别与同一个常数进行比较?

sql - 通过更改几个列值将行复制到同一个表

php - MySQL 结果集未获取数据

sql - 使用另一个表的记录作为元素列出 SQL 中的数据结构

MySQL SELECT FROM a relation table WHERE 他们有相同的亲戚

sql - DBI 准备好的语句 - 绑定(bind)十六进制通配符字符串

带截断的 SQL ROUND() 函数采用 119.1 并返回 119.09

sql-server - 在 SQL Server Management Studio 2014 中,新触发器菜单选项被禁用

mysql - 如何在 ssp 简单类中使用 UNION ALL?

带有 "<>"运算符的 MySQL SELECT 查询给出了奇怪的结果