gpt4 book ai didi

php - MySQL UNION - 将两个单值查询输出到不同的列中

转载 作者:行者123 更新时间:2023-11-29 12:59:58 26 4
gpt4 key购买 nike

我有两个不同的表,我想从中提取唯一 ID 的数量。每个表的查询如下所示

SELECT COUNT(DISTINCT(`uniqueid`)) as `t1ID` FROM `table1`

SELECT COUNT(DISTINCT(`uniqueid`)) as `t2ID` FROM `table2` WHERE `condition`='true'

我想将两个查询合并到一个语句中。我知道我可以使用

SELECT COUNT(DISTINCT(`uniqueid`)) as `t1ID` FROM `table1`
UNION ALL
SELECT COUNT(DISTINCT(`uniqueid`)) as `t2ID` FROM `table2` WHERE `condition`='true'

但是,这会使用第一个查询中的计数名称作为列名称在两个单独的行中输出两个计数:

+------+
+ t1ID +
+------+
+ 4 +
+------+
+ 5 +
+------+

有没有办法让 UNION 查询输出两列中的数据以及相应的计数名称?即

+------+------+
+ t1ID + t2ID +
+------+------+
+ 4 + 5 +
+------+------+

这样,直接引用结果就会容易得多,而不必费力记住查询提交的顺序。

最佳答案

SELECT (SELECT COUNT(DISTINCT(`uniqueid`))  FROM `table1` ) as `t1ID`,
(SELECT COUNT(DISTINCT(`uniqueid`)) FROM `table2` WHERE `condition`='true') as `t2ID`

关于php - MySQL UNION - 将两个单值查询输出到不同的列中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23489801/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com