MySQLのすべてのレコードを取得するには、COUNT(*)を使用する必要がありますか?
列にnull以外のようなすべての値が必要な場合は、count(*)を使用してください。これは、count()メソッドを使用するよりも高速です。
count(*)を使用する構文は次のとおりです-
select count(*) as anyVariableName from yourTableName;
上記の概念を理解するために、最初にテーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです-
mysql> create table CountingDemo -> ( -> BookId int -> ); Query OK, 0 rows affected (0.60 sec)
挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。クエリは次のとおりです-
mysql> insert into CountingDemo values(100); Query OK, 1 row affected (0.13 sec) mysql> insert into CountingDemo values(); Query OK, 1 row affected (0.17 sec) mysql> insert into CountingDemo values(200); Query OK, 1 row affected (0.12 sec) mysql> insert into CountingDemo values(300); Query OK, 1 row affected (0.16 sec) mysql> insert into CountingDemo values(); Query OK, 1 row affected (0.12 sec)
selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです-
mysql> select *from CountingDemo;
出力
+--------+ | BookId | +--------+ | 100 | | NULL | | 200 | | 300 | | NULL | +--------+ 5 rows in set (0.00 sec)
列にnull値がないとすると、count(*)とcount()は同じ結果になります。
しかし、この例では、BookId列にいくつかのnull値があります。この場合、count(*)とcount()の両方で異なる結果が得られます。
count(*)-
を使用するクエリは次のとおりです。mysql> select count(*) as AllValue from CountingDemo;
出力
+----------+ | AllValue | +----------+ | 5 | +----------+ 1 row in set (0.00 sec)
彼女はcount()を使用するクエリであり、null値のカウントを考慮しないため、別の結果が得られます。クエリは次のとおりです-
mysql> select count(BookId) as AllvalueWhichisNotnull from CountingDemo;
出力
+------------------------+ | AllvalueWhichisNotnull | +------------------------+ | 3 | +------------------------+ 1 row in set (0.00 sec)
-
1つのMySQLクエリで特定のレコード(重複)の発生をカウントします
このためには、集計関数COUNT()とGROUP BYを使用して、これらの特定のレコードをオカレンス用にグループ化します。まずテーブルを作成しましょう- mysql> create table DemoTable ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentSubject varchar(40) ); Query OK, 0 rows affected (5.03 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql>
-
MySQLで指定された2つの日付の間のレコードの合計を取得します
これには、BETWEENキーワードを使用します。まず、-を作成しましょう mysql> create table DemoTable1444 -> ( -> Value int, -> PurchaseDate datetime -> ); Query OK, 0 rows affected (0.45 sec) insert-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1444 valu