我正试图形成一个查询,根据用户输入的变量对多个表中不同的行进行计数。
但是一个或多个表可能为传递的{{Customer}}变量返回零结果,
当我运行传递在所有表中都有数据的{{Customer}}的查询时,我会得到所有表的预期计数;但是,如果其中一个表返回零,那么所有结果都为零。
我试着把它分成不同的计数,只得到三个结果,但同样,只要一个结果为零,所有结果都为零。
当返回零结果时,是否有人能够提供如何忽略子查询的建议,或者提供在多个表中获得不同结果计数的更好方法?
SELECT COUNT (DISTINCT x.LicenseKey) + COUNT (DISTINCT y.LicenseKey) + COUNT (DISTINCT z.LicenseKey) AS Number_Of_Licenses
FROM (
SELECT LicenseKey
FROM `table_1`
WHERE Customer LIKE {{Customer}}
AND Trial = false
) as x,
(SELECT LicenseKey
FROM `table_2`
WHERE Customer LIKE {{Customer}}
AND Trial = false
) as y,
(SELECT LicenseKey
FROM `table_3`
WHERE Customer LIKE {{Customer}}
AND Trial = false
) as z
如有任何帮助,我们将不胜感激。:)