と仮定MYSQL文でこれらGROUP_BYの統計情報を取得することができ、私はこのように作成されたMySQLのテーブルを持っている方法:私が最も効率的
CREATE TABLE `my_table` (
`my_id` char(32) NOT NULL,
`my_boolean_field` tinyint(1) DEFAULT NULL,
PRIMARY KEY (`my_id`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
このテーブルは非常に大きいです。それには約1,000万行があります。 my_boolean_field
の値は1
,0
、null
です。
今は別に、私は500のIDのリストを持っています。これをmy_list
としましょう。それらは、改行で区切られたテキストファイル内にあります。そのファイルの名前はmyfile.txt
です。このファイル内のエントリは、SQL文の単一のwhere
句に含めるには長すぎます。
私は次の質問に答えたい:
- どのように多くの
my_table
の行があり、my_list
にあり、my_boolean_fieldがnullのID。 my_table
の行数とIDはmy_list
で、my_boolean_field == 1です。my_table
の行数とmy_list
とmy_boolean_field == 0にあるID。my_table
の行数とmy_list
にないIDがあり、my_boolean_fieldがnullです。my_table
の行数とmy_list
およびmy_boolean_field == 1にないIDがあります。my_table
の行数とmy_list
およびmy_boolean_field == 0にないIDがあります。
上記の6つのカウントを得る最も効果的な方法は何ですか?
テキストファイルをデータベースにテーブルとして読み込まないのはなぜですか?クエリは単純な結合になります。 –
私に質問を表示します。 –