実施効果: 1. count(1) と count(*) テーブル内のデータ量が多い場合、テーブルを分析した後、count(1) を使用すると count(*) を使用するよりも時間がかかります。 実行プランから見ると、count(1)とcount(*)は同じ効果があります。 ただし、テーブルを分析すると、count(1) は count(*) よりも時間がかかりません (10,000 項目以内のデータの場合) が、その差はそれほど大きくありません。 count(1) がクラスター化インデックス id である場合、count(1) の方が確実に高速になります。しかし、その差は非常に小さいです。 count(*) は自動的にそのフィールドに合わせて最適化されるためです。したがって、count(1) を使用する必要はなく、count(*) を使用してください。SQL が最適化に役立ちます。したがって、count(1) と count(*) の間には基本的に違いはありません。 2. count(1) と count(フィールド) 両者の主な違いは (1) count(1)は、フィールドがnullのレコードも含め、テーブル内のすべてのレコードの数をカウントします。 (2)count(field)は、フィールドがnullの場合は無視して、テーブル内でフィールドが出現する回数をカウントします。つまり、フィールドが null のレコードはカウントされません。 count(*)とcount(1)とcount(列名)の違い 実行効果: count(*) にはすべての列が含まれ、行数に相当します。結果をカウントする際、NULL 値を持つ列の値は無視されません。 実行効率: 分析例 mysql> counttestテーブルを作成します(name char(1), age char(2)); クエリは正常、影響を受けた行は 0 行 (0.03 秒) mysql> counttest の値に挿入 -> ('a', '14'),('a', '15'), ('a', '15'), -> ('b', NULL)、('b', '16')、 -> ('c', '17'), -> ('d', null)、 ->('e', ''); クエリは正常、8 行が影響を受けました (0.01 秒) 記録: 8 重複: 0 警告: 0 mysql> counttest から * を選択します。 +------+------+ | 名前 | 年齢 | +------+------+ | 14 | | 15 | | 15 | | b | NULL | | 16 | | 17 | | d | NULL | | 電子 | | +------+------+ セット内の行数は 8 です (0.00 秒) mysql> 名前、count(name)、count(1)、count(*)、count(age)、count(distinct(age)) を選択します。 -> counttest から -> 名前でグループ化します。 +------+-------------+-----------+-----------+-----------+----------------------+ | 名前 | count(名前) | count(1) | count(*) | count(年齢) | count(distinct(年齢)) | +------+-------------+-----------+-----------+-----------+----------------------+ | 1 | 3 | 3 | 3 | 3 | 2 | | 2 | 2 | 2 | 1 | 1 | | 1 | 1 | 1 | 1 | 1 | | 1 | 1 | 1 | 0 | 0 | | 1 | 1 | 1 | 1 | 1 | +------+-------------+-----------+-----------+-----------+----------------------+ セット内の行数は 5 です (0.00 秒) 追加参考資料: http://blog.csdn.net/lihuarongaini/article/details/68485838 これで、count(1)、count(*)、count(列名)の違いについての説明は終了です。count(1)、count(*)、count(列名)の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: 同じドメイン名を持つ Nginx プロキシのフロントエンドとバックエンドの分離プロジェクトの完全な手順
>>: Vue3はサイドナビゲーションテキストスケルトン効果コンポーネントをカプセル化します
Docker を初めて使い始めると、通常とは異なる問題に遭遇して、必然的に混乱してしまいます。大丈夫...
最近、同社はitpubを皮切りに、コーポレートウェブサイト傘下の全サイトの評価を開始した。そのために...
この記事では、gearman+mysql メソッドを使用して永続化操作を実装します。ご参考までに、詳...
目次js の1. グローバルガードを登録する2. Vuex 状態管理グローバルキャッシュルート3. ...
目次序文: 1. インデックスメソッドを作成する2. インデックスを作成するために必要な権限序文: ...
この記事では、チェックボックスコンポーネントのカプセル化を実装するためのvue3.0の具体的なコード...
前回、非常に熱心なファンから、月を呼吸する光の効果にできるかどうか尋ねられました。月の大きさの写真が...
jQuery フォーム検証の例 / ユーザー名、パスワード、住所、電子メールの検証を含む下記の通り ...
1. 効果を達成する 2 知識ポイント2.1 <label> タグHTML では、<...
必要なリンクにインライン スタイルを追加します。コードをコピーコードは次のとおりです。 <a ...
目次ZabbixはNginxを監視するZabbixはTomcatを監視するZabbixはMySQLを...
Linux や Unix の cut コマンドは、ファイルの各行から一部を切り取って標準出力に出力す...
目次ビジネスロジックデータテーブル構造クエリロジックSQL スクリプトスクリプトの説明ビジネスロジッ...
1. まずリクエスト設定ファイルを見て、axios.createメソッドを見てください。baseUR...
目次Web コンテナとは何ですか? HTTP の性質HTTP リクエスト応答の例クッキーとセッション...