gpt4 book ai didi

sql - 在联合查询中使用计数

转载 作者:行者123 更新时间:2023-12-04 20:10:32 25 4
gpt4 key购买 nike

这应该相当简单,但我找不到我需要的确切语法。我有一个表,其中有一个 name1 和一个 name2 字段。我只想要字段中所有唯一值的列表以及每个值的计数。例如:

name1       name2
-----------------
smith jones
jones williams
evans williams
elliot james
williams smith

我想要:

name     count
--------------
smith 2
jones 2
Williams 3
evans 1
Elliot 1
james 1

为了获得唯一名称,我使用了联合查询:

select name1 as myname
from myTable
union
select name2 as myname
from myTable

但是我找不到正确的语法来计算计数。有人可以让我摆脱痛苦吗?

最佳答案

您应该使用 UNION ALL 而不是 UNION,因为 UNION 将删除所有重复项而 UNION ALL 则不会。然后您可以将联合查询用作子查询,并进行计数:

SELECT name, COUNT(*)
FROM
(SELECT name1 name FROM tablename
UNION ALL
SELECT name2 name FROM tablename) s
GROUP BY
name

请参阅 fiddle here .

关于sql - 在联合查询中使用计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18229500/

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