問題:
特定の列に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以外の)値の数のみを返します。