作者Whynopeople (whynopeople)
看板Database
標題[SQL ] 兩個table結合查詢語法問題
時間Wed May 29 13:44:09 2013
各位前輩好,
最近在整理資料遇上一些語法問題。
有兩張資料表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