同じ MySQL サーバー上の 2 つのデータベース間のクエリを高速化することを
検討している db1.Source、db2.Source の間で 001 の値を比較し、db2.Source.ID を返す必要
があるそれを行うためのより速い方法ではありません。
db1.Source (7,816,729 行)
IDタグ値
ASP23409230 001 ASP23409230
ASP23409230 856 http://....
ASP23409230 245 作品名
BCH20002930 001 BCH20002930
...
db2.Source (109,676,136 行)
ID タグ値
319778 001 ASP23409230
319778 856 http://....
319778 245 作品名
319779
...
クエリ
SELECT t2.ID, t1.value, t2.value
FROM db1.Source t1, db2.Source t2
WHERE t1.tag = '001'
AND t2.tag = '001'
AND t1.value = t2.value;
結果
ID 値 値
5369620 ASP71572/glmu ASP71572/glmu
5370498 ASP73396/glmu ASP73396/glmu LIMIT 20 には約 30 秒かかるため、これは不適切
なクエリですが、これまでのところまとめられたものです。
より速い方法はありますか、それとも 54 時間のクエリに着手する必要がありますか (それが可能な場合)
。