この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。
建築家
建築家
リスト
放送
茶屋
インテリジェントAI会話
.NETキャリア&テクニカルカレッジ
ちっちゃいなクズブログ
この版
利用者
Architect_Programmer_Code農業ネットワーク
»
建築家
›
データベース&データベース
›
Microsoft SQL Server
›
SQL文におけるcount(0)およびcount(*)の誤解
眺める:
15920
|
答える:
1
[出典]
SQL文におけるcount(0)およびcount(*)の誤解
[リンクをコピー]
クズども
掲載地 2017/08/10 13:29:00
|
|
|
近年、数関数は多く使われており、数えるべき数が比較的大きい場合、count(*)はより時間がかかり、count(1)はより短時間で計算されることがわかっています。
いくつかの文書には以下の記述があります:
データテーブルに主キーがない場合は、count(*)より速いです。
主キーが存在する場合、主キー(ジョイントプライマリキー)もcount(*)より速いです。
テーブルにフィールドが1つだけなら、count(*)が最速です
count(*) count(1) 両者を比較します。 主なのは(1)に対応するデータフィールドの数をカウントすることです。
もしcount(1)がポリインデックスidなら、count(1)より速く対応する必要があります。 しかし、その違いは非常に小さいです。
count(*)のため、フィールドは自動的に を指定するよう最適化されます。 つまり、カウント(?)を使う必要はなく、SQLが最適化を助けてくれます
カウント詳細:
count(*) は、値がnullの行を含むテーブルに存在するすべての行の合計数を返します。
しかし、count(列名)は、nullを除くテーブル内のすべての行の合計数を返します
(デフォルト値の列もカウントされます。)
異なる列名の場合、結果はnull値と重複データを削除した後の結果となります
以前は、ブログで「全員がcount(0)を使うことを推奨されている」と書かれていて、クエリ効率が比較的高いと書かれていたことを知りませんでした
現在では、count(0)を使うことは誤解であることが判明しています!!
count(0) 統計の最初の列は空ではありません
count(*)の代わりにnumber(列名)やcount(constant)を使わないでください。
count(*) はSQL92で定義される標準的な行数の構文であり、データベースのNULLおよび非NULLとは関係ありません。
注:count(*)はNULL値の行をカウントしますが、count(column name)はNULL値の行をカウントしません。
したがって、今後すべての統計を行い空データを排除しない場合は、正直にcount(*)を使う方が良いです!!
先の:
jsにおけるletとvar定義変数の違い
次に:
jqueryは最大10個のデータを表示するテーブルを実装しています
関連記事
•
C# 9.0 新しい構文属性と論理パターンがif文の美観を向上させる
•
.NET/C# 新しい特徴レコードタイプ
•
SQLMAP浸透ツールのSQLインジェクションテストをご利用ください
•
(MSSQL) SQL SERVERは非常に大規模なSQLスクリプトを実行します
•
.NET/C# 構文 goto 文
•
[実戦]。 NET/C# SQLクエリジェネレーター sqlkataベース
•
C# 10 グローバル引用を用いた新しい構文グローバル
•
Markdown構文のCSVオンライン変換
•
SQL Serverデータベースにおける一時テーブルの詳細な説明
•
SQL Server 2016にはインストール完了後の管理ツール(SSMS)がありません
クヴェルチュ
掲載地 2017/08/10 13:54:00
|
教えられた
閲覧したセクション
フロントエンドフレーム
.Net/C#
ジャワ
サーバー構成
ウェブサイト構築
UIデザイン
Windows/Linux
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。
Mail To:help@itsvse.com