因爲我認爲這應該是一個基本問題,我知道這個問題可能已被問到,但我無法找到它。我可能要獲得我的同行壓力徽章,但我仍然會問:在IN內使用通配符的SQL Server
有沒有在SQL Server中使用IN時不知道使用通配符%的方法。
我意識到,我可以使用OR的一樣:
select *
from jobdetails
where job_no like '0711%' or job_no like '0712%'
,並在某些情況下,我可以像使用子查詢:
select *
from jobdetails
where job_no in (select job_no from jobs where job_id = 39)
,但我希望做類似如下:
select *
from jobdetails
where job_no in ('0711%', '0712%')
在這種情況下,它使用百分號作爲字符而不是通配符,因此沒有r ows返回。我現在只需要使用一堆OR,但我知道必須有更好的方法。你用什麼方法呢?
我很欣賞你的回答,雖然這是行得通的,但這可能是由於我的例子簡化了。我想要一些不一定依賴前4個字符的東西。我正在尋找更多依賴通配符的東西。不過謝謝。 – Dusty 2009-07-02 19:13:00
這似乎是迄今爲止最好的答案,至少在我的情況下。這將匹配從列表中的指定文本開始的任何值,並且使添加條目變得更加容易(我需要100個條目的列表,因此大多數其他解決方案都太冗長) – 2012-04-04 15:32:33