試試
select W.*,O.f1,O.f2,min(O.f3)
from W left join O on W.Key=O.Key
where W<>'' and (W.f1='val' OR W.f2='val')
group by W.*,O.f1,O.f2
※ 引述《JYHuang (夏天到了,冷不起來了說)》之銘言:
: 推 streetbad: 如不介意是可釋出一點欄位內容資訊及條件還有欲產出的 06/24 00:10
: → streetbad: 結果比較方便提供協助 06/24 00:10
: 推 streetbad: 另外多層SELECT的動作還有LEFT JOIN子查詢的部份 可以 06/24 00:13
: → streetbad: 朝先塞到temp table的方向 字串的條件看起來也是可再 06/24 00:13
: → streetbad: 調整 目前應該主要是這三塊在拖速度 06/24 00:13
: 感謝,今早也有想到塞進temp的方向
: 不過比較怕沒有建temp的權限..
: solution大概類似這樣
: member會員資料表
: 有account(key,not null) , name, phone ,mobile , mail等欄位
: 總共超過33萬筆
: order訂單資料表
: 有account(可能為空) , name, phone ,mobile , mail等欄位
: 總共超過10萬筆
: 依條件搜尋會員資料
: 搜尋的欄位如果有name,phone(搜尋phone和mobile),mail時
: 也一併用這些條件搜尋會員底下的訂單並且只找符合的最新一筆訂單
: (意即訂單符合的也顯示該筆會員資料)