問題:
特定の列にNULL以外のさまざまな値がいくつあるかを数えたいと考えています。
例:
私たちのデータベースには、customer
次の列にデータがあります:id
、first_name
、last_name
、およびcity
。
id | first_name | last_name | 都市 |
---|---|---|---|
1 | ジョン | ウィリアムズ | シカゴ |
2 | トム | ブラウン | オースティン |
3 | ルーシー | ミラー | シカゴ |
4 | エリー | スミス | ダラス |
5 | ブライアン | ジョーンズ | オースティン |
6 | アラン | デイビス | NULL |
異なる(およびNULL
以外の)数を見つけましょう )都市。
解決策:
SELECT COUNT( DISTINCT city) as cities FROM customer;
このクエリは、顧客が住んでいる都市の数を返します:
都市 |
---|
3 |
ディスカッション:
特定の列に格納されているさまざまな値の数をカウントするには、COUNT
に渡す列を指定するだけです。 DISTINCT
として機能します 。列が与えられると、COUNT
その列の値の数を返します。これをDISTINCT
と組み合わせる 一意の(およびNULL以外の)値の数のみを返します。