[SQL] SQL 進階搜尋寫法~ 一個很簡單的問題

最近在幫 國史館台灣文獻館 寫館內搜尋系統,然後遇到一個問題,晚上跟 sayya裡的大大 ghost 搞了很久,也佔用 ghost 大大很多時間,在這裡先感謝他大力相助~,他還說 這是他解決最久的問題,哈哈,問題如下

我先列出3個表格的欄位跟一些值 table1 class_id, class_title 1 name1 2 name2 table2 class_id, series_name 1 000001 1 000002 1 000003 2 001001 2 001002 2 001003 table3 group_id, group_name 1 000001 1 000002 1 000003 1 000004 2 001001 2 001002 2 001003 如果想要 table1 跟 table2 結合 只要下 sql語法一

############

ex:

Select * From table1 as t1, table2 as t2 where t1.class_id = t2.class_id && SUBSRTING(series_name,1,3) = ‘000’ ############ 如果想要 table1 跟 table3 結合 只要下 sql語法二

############

ex:

Select * From table1 as t1, table3 as t2 where t1.class_id = t3.group_id && SUBSRTING(group_name,1,3) = ‘000’ ############ 但是我想要用一句sql語法把上面2個sql語法取出來的資料,也就是 sql語法一取出3筆 sql語法二取出4筆 然後我想用一個sql語法可以取出上面7筆資料,我是這樣寫sql

############

ex:

Select * From table1 as t1, table2 as t2, table3 as t3 where (t1.class_id = t2.class_id && SUBSRTING(series_name,1,3)= ‘000’) || (t1.class_id = t3.group_id && SUBSRTING(group_name,1,3) = ‘000’) ############ 但是這樣取出來的不是我想要的,請問要怎麼下sql會比較好 這個問題說簡單也蠻簡單,只要利用

SQL UNION ALL 這個方法就可以了,不過想破頭了,昨天下午就在搞這個,感謝大家的幫忙 題目:sql題目{#p91}