Mysql 如何合计3个select语句计数?

Mysql 如何合计3个select语句计数?,mysql,sql,select,Mysql,Sql,Select,我有三个选择声明如下,我想总结一下记录的总数。我该怎么做 SELECT COUNT(*) AS Number FROM tableA where user_id = 5 //Total 5 records SELECT COUNT(*) AS Number FROM tableB where user_id = 5 //Total 6 records SELECT COUNT(*) AS Number FROM tableC where user_id = 5 //Total 1 r

我有三个选择声明如下,我想总结一下记录的总数。我该怎么做

SELECT COUNT(*) AS Number FROM tableA where user_id = 5   //Total 5 records
SELECT COUNT(*) AS Number FROM tableB where user_id = 5   //Total 6 records
SELECT COUNT(*) AS Number FROM tableC where user_id = 5   //Total 1 records

因此,返回的结果将是12。

我认为这应该可以做到:

SELECT SUM(Number)
FROM (
    SELECT COUNT(*) AS Number FROM tableA where user_id = 5
    UNION ALL
    SELECT COUNT(*) AS Number FROM tableB where user_id = 5
    UNION ALL
    SELECT COUNT(*) AS Number FROM tableC where user_id = 5
)

您可以将
count(*)
应用于
union all
的结果:

SELECT COUNT(*)
FROM   (SELECT user_id FROM tablea
        UNION ALL
        SELECT user_id FROM tableb
        UNION ALL
        SELECT user_id FROM tablec) t
WHERE  user_id = 5
SELECT COUNT(*)
FROM   (SELECT user_id FROM tablea
        UNION ALL
        SELECT user_id FROM tableb
        UNION ALL
        SELECT user_id FROM tablec) t
WHERE  user_id = 5