3

紛らわしい質問は、例を通して最もよく尋ねられます。次の結果セットがあるとします。

http://i.imgur.com/qHZcfBD.png

私がやりたいことは、両方の列から 1 つの数字が何回出現するかを数えることです。

したがって、返されるデータセットは次のようになります。

ID    Counted
0      4
1      2
9      1
13     1

私の最初の考えは、両方の ID のカウントの間に何らかの追加を行うことでしたがGROUP、SQL でそれらを機能させる方法が正確にはわかりません。

4

1 に答える 1

3

次のように、サブクエリ、、GROUP BYおよび aを使用してこれを行うことができますUNION ALL

SELECT ID, COUNT(*)
FROM(
    SELECT ID1 AS ID FROM MyTable
UNION ALL
    SELECT ID2 AS ID FROM MyTable
) source
GROUP BY ID
ORDER BY ID ASC
于 2013-10-30T09:58:55.920 に答える