两个查询的总和

时间:2019-06-01 20:54:11

标签: mysql

我的桌子看起来像这样:

enter image description here

我问了两个问题:

SELECT COUNT(column_1) AS result_1 FROM table WHERE column_1= 5;
SELECT COUNT(column_2) AS result_2 FROM table WHERE column_2 = 5;

第一个查询给我result_1 = 2,第二个结果_2 = 3

我需要进行查询,这将给我这两个值的总和(2 + 3 = 5)。 我总是得到两个结果,或者只有一个。

2 个答案:

答案 0 :(得分:2)

每个表达式:

column_1 = 5

column_2 = 5

评估为0或1(false或true)。
因此,您可以像这样使用它们:

SELECT SUM(column_1 = 5) + SUM(column_2 = 5) AS result FROM table

请参见demo
结果:

| result |
| ------ |
| 5      |

答案 1 :(得分:1)

您可以使用子查询:

SELECT sub1.result_1 + sub2.result_2 FROM (
SELECT COUNT(column_1) AS result_1 FROM table WHERE column_1 = 5) as sub1, (
SELECT COUNT(column_2) AS result_2 FROM table WHERE column_2 = 5) as sub2