看板 Database 關於我們 聯絡資訊
各位前輩好, 最近在整理資料遇上一些語法問題。 有兩張資料表table_1及table_2 想要的到result_table的結果。 table 1 ================= | CUI | STR | ----------------- | 1 | Hi | ----------------- | 2 | wow | ================= table 2 ================== | CUI_1 | CUI_2 | ------------------ | 1000 | 1 | ------------------ | 2 | 1002 | ------------------ | 1 | 2 | ------------------ | 2 | 1 | ================== 結果: result_table ============================= | CUI_1 | STR | CUI_2 | STR | ----------------------------- | 1 | Hi | 2 | wow | ----------------------------- | 2 | wow | 1 | Hi | ============================= 我們試著下以下條件 select table2.CUI_1, table1.STR, table2.CUI_1, table.STR from table1 , table2 where table2.CUI1 in (select table.cui from table2) and table2.CUI2 in (select table1.cui from table1) 但也許是這樣寫效率太差(table1有6000筆資料,table2有百萬筆資料) 得不到回應 而且我們都覺得這語法似乎達不到預期結果 還請版上前輩們可否指導一下 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 120.126.36.94
a926:資料表做過index了嗎? 05/29 16:49
Whynopeople:有的 05/29 16:56
swpoker:不要用in~直接再join 05/29 17:40
swpoker:table2.CUI1 in (select table.cui from table2) -->??? 05/29 17:42
swpoker:你的SQL可以整理一下嗎~要是真的話~有點無言 05/29 17:42