ユーザーのすべてのサブスクライバーを取得しようとしています
私の質問:
SELECT
COUNT(sub.id) as ids
FROM
subscribers as sub
WHERE
suid=541839243781
EXPLAIN プリント:
╔════╦═════════════╦═══════╦══════╦═══════════════ . ║ id ║ select_type ║ table ║ type ║ possible_keys ║ key ║ key_len ║ ref ║ rows ║ Extra ║ ╠════╬═════════════╬═══════╬══════╬═══════════════ . ║ 1 ║ SIMPLE ║ sub ║ ref ║ i3 ║ i3 ║ 8 ║ const ║ 47890 ║ インデックスの使用 ║ ╚════╩═════════════╩═══════╩══════╩═══════════════ .
現時点では、取得した合計数は約48k
であり、ロードに時間がかかり0.0333
ます...これが1m
または??になったらどうなりますか5m
?? その後、ロードするのに何年もかかる可能性があります...
サブスクライバー テーブルの私のインデックスは次のとおりです。
╔═════════════╦════════════╦═══════════════════╦══ ════════════╦═════════════╦═══════════╦═══════════ ══╦══════════╦════════╦══════╦════════════╦═══════ ══╗ ║ 表 ║ Non_unique ║ Key_name ║ Seq_in_index ║ Column_name ║ 照合 ║ カーディナリティ ║ Sub_part ║ Packed ║ Null ║ Index_type ║ コメント ║ ╠═════════════╬════════════╬═══════════════════╬══ ════════════╬═════════════╬═══════════╬═══════════ ══╬══════════╬════════╬══════╬════════════╬═══════ ══╣ ║ サブスクライバ ║ 0 ║ プライマリ ║ 1 ║ id ║ A ║ 60251 ║ NULL ║ NULL ║ ║ BTREE ║ ║ ║ サブスクライバー ║ 1 ║ total_subscribers ║ 1 ║ id ║ A ║ 60251 ║ NULL ║ NULL ║ ║ BTREE ║ ║ ║ サブスクライバー ║ 1 ║ total_subscribers ║ 2 ║ suid ║ A ║ 60251 ║ NULL ║ NULL ║ ║ BTREE ║ ║ ║ サブスクライバー ║ 1 ║ i3 ║ 1 ║ suid ║ A ║ 6025 ║ NULL ║ NULL ║ ║ BTREE ║ ║ ║ サブスクライバー ║ 1 ║ i3 ║ 2 ║ uid ║ A ║ 60251 ║ NULL ║ NULL ║ ║ BTREE ║ ║ ║ サブスクライバ ║ 1 ║ i3 ║ 3 ║ id ║ A ║ 60251 ║ NULL ║ NULL ║ ║ BTREE ║ ║ ╚═════════════╩════════════╩═══════════════════╩══ ════════════╩═════════════╩═══════════╩═══════════ ══╩══════════╩════════╩══════╩════════════╩═══════ ══╝
では、このクエリをより効率的にするにはどうすればよいですか?