2016-12-06 12 views
0

私はテーブルに参加してテーブルを作成しようとしています。それは非常に単純な左結合メソッドであり、私はすでに変数のインデックスを作成しました。しかし、プロセスを実行するには時間がかかります。何を私は間違っていた...?などMySQLで長いjoin&create table(インデックス作成済み)

私のコードは次のとおりです。私はそのような変数も

ACD_ID, RIN and CONNECTION_IDENTIFIER. 

にインデックスを作成し

create table rep_test.can_em 
select 
a.ACD_ID, 
b.RIN 
from rep_time.connections as a 
left join rep_time.employee_connections as b 
on a.CONNECTION_IDENTIFIER = b.CONNECTION_IDENTIFIER 

、各変数のデータ型は次のとおりです。

ACD_ID : bigint(20) 
RIN: bigint(20) 
CONNECTION_IDENTIFIER: VARCHAR(255) 

すべてのヘルプは理解されるであろう。私は2時間後にプロセスを停止しました。このクエリの

答えて

1

create table rep_test.can_em 
    select c.ACD_ID, ec.RIN 
    from rep_time.connections c left join 
     rep_time.employee_connections ec 
     on c.CONNECTION_IDENTIFIER = ec.CONNECTION_IDENTIFIER; 

最適なインデックスがemployee_connections(CONNECTION_IDENTIFIER, RIN)です。

left joinのために、最初のテーブルのすべてのデータが返されます。おそらく、データ量がパフォーマンス上の問題を引き起こしているのかもしれません。

+0

こんにちは私は試しましたが、それでも私は長い時間がかかりましたので、私は止めなければなりませんでした。私は 'connections(CONNECTION_IDENTIFIER、ACD_ID)'に別のインデックスを作成し、上記のコードを実行しようとしました。これらのどちらのようにも問題を解決できないようです。 – wannabhappy