Sybase ISQL 9データベースの "a"と "b"の両方の列に異なる値を持つ行の数を数えようとしています。複数の異なる列の行を数える
がa b1 9 2 9 3 8 3 7 2 9 3 7
次の構文のようなものがいいだろう:
SELECT COUNT(DISTINCT a, b) FROM MyTable
しかし、これがない私は、次のデータセットが答え "4" を生成しますある意味何
作業。
私は解決策持っています:
SELECT COUNT(*) FROM
(SELECT a, b
FROM MyTable
WHERE c = 'foo'
GROUP BY a, b) SubTable
をしかし、このクエリを構築するすっきり方法がある場合、私は不思議でしたか?これは、あなたはを参照することができます(別の答えで述べたように文字列を連結する以外に)簡単な方法で行うことができない理由の詳細については
SELECT COUNT(*)
FROM (SELECT DISTINCT a, b FROM MyTable)
このGoogleはポストを回答:についてどのように
は何ですか "C = 'foo' で" –
のC = 'fooがちょうどでした私が関心のないテーブルに他の行があることを示しています。 –