テーブルにプライマリフィールド 'id'があるとします(速度など)。MySQLのCOUNT(ID)とCOUNT(*)の比較
SELECT COUNT(id)
FROM table
と
SELECT COUNT(*)
FROM table
テーブルにプライマリフィールド 'id'があるとします(速度など)。MySQLのCOUNT(ID)とCOUNT(*)の比較
SELECT COUNT(id)
FROM table
と
SELECT COUNT(*)
FROM table
がwww.mysqlperformanceblog.comでCount(*) vs Count(col)を見てください、彼らは(インデックスとNULLされていないか、など)様々な 'COL' のタイプについては、このトピックを議論し、これはMyISAMテーブルとInnoDBテーブルのためです。
は、私は質問は、MySQLについて知っているが、それは価値がある何のために、Oracleの推奨される(*)カウント:(BalusCから上記のコメントを参照)、これは、データベースの特定であることを示すことを行きます。多くのデータベース(MS-SQL、MySQL)にはさまざまなタイプのメタデータを保持する情報スキーマテーブルがあるため、ある構文ではすぐに利用可能な値を検索し、別の構文はテーブルにまっすぐ進んでいる。一日の終わりには、さまざまなオプションを試してみてください。EXPLAINが舞台裏で行っていることを教えてください。 ENAMEは と列NOT NULL制約ではありません、それは確実にカウントされていないいくつかのnull値 を持つことがあるため
進むべき道であることをより多くの私には思えますORMを使用するか(すべてのケースで最適化したいと思っています)、まったく* one *データベースエンジンのためにSQLを書いて残りを忘れてしまいます。 –
COUNT(*) カウント(ENAME) は差分出力を表示することができます。
はそれが役に立てば幸い...!
これらのスレッドを見ることができます。http://stackoverflow.com/questions/1221559/count-vs-count1 http://stackoverflow.com/questions/433913/in-sql-is-there-a-difference-間-カウントと-countfieldname http://stackoverflow.com/questions/59294/in-sql-whats-the-difference-between-countcolumn-and-count –