如何通過組合IN和LIKE來編寫select查詢 我有一個子查詢,它返回一些記錄,而我必須從另一個表中選擇記錄。 問題是我必須像子查詢 的結果recors子句中使用下面是什麼即時試圖從工資表,我需要它匹配僱工表的名稱記錄做SQL SELECT IN with like
select * from salary where employeename like (select name from employee)
一個例子。我需要使用LIKE。 有人可以幫我請
如何通過組合IN和LIKE來編寫select查詢 我有一個子查詢,它返回一些記錄,而我必須從另一個表中選擇記錄。 問題是我必須像子查詢 的結果recors子句中使用下面是什麼即時試圖從工資表,我需要它匹配僱工表的名稱記錄做SQL SELECT IN with like
select * from salary where employeename like (select name from employee)
一個例子。我需要使用LIKE。 有人可以幫我請
我會去用join
而不是in
...雖然與通配符這將是一個充滿反正表掃描:
select distinct s.*
from salary s
join employee e on s.employeename like '%' + e.name + '%'
檢查了這一點。
select * from salary where emp_name like '%aj'
這並不正確解析(你需要用字符串分隔符和不該沒有結果。),表錯了(並且你錯過了另一張表),我不清楚爲什麼你會有一個通配符但不是尾隨的。 – 2012-02-09 04:43:53
@AaronBertrand部分是我的錯 - 當我用代碼標籤封裝查詢時,尾隨的'.'是我的錯。我不會因其餘部分而獲得功勞... – 2012-02-09 04:48:57
但是,如果您需要Nicki Minaj的薪水,這將非常有效。 – 2012-02-09 04:55:19
http://stackoverflow.com/questions/3014940/is-there-a-combination-of-like-and-in-in-sql – Romeo 2012-02-09 04:37:41