摘要:[SQL][語法]條件範圍搜尋 like 與 in
當我們要對資料作搜尋時,T-SQL 常用的方是有 LIKE 與 IN,那有沒有辦法既要 like 又要 in 呢?有的~請看下去......
【like】
SELECT * FROM employee WHERE user_id LIKE '098%'
>會得到 098*** 等資料, ex 098003,098012...
SELECT * FROM employee WHERE user_id LIKE '%009'
>會得到 ***009 等資料, ex 098009, 075009...
SELECT * FROM employee WHERE user_id LIKE '%98%'
>會得到 ***98*** 等資料,ex 098001, 072980...
上面的例子是說 %所放置的位置沒有設限,並且可以使用多個(%的意思如同*般的萬用字元)
【IN】
SELECT * FROM employee WHERE user_name IN ('Tommy','Beck','Ducati')
>會得到 Tommy,Beck,Ducati 等3人的資料
Q:問題是有沒辦法找出 user_name 中,使用者名稱為 B、D、T 開頭的所有使用者呢?(如也要撈到 Dummy、Bingo、Tomcat)
A:利用上面的方法你可能會想用
SELECT * FROM employee WHERE user_name LIKE IN ('B%','D%','T%')
可以這樣做嗎?答案是不行的~~
請改為
SELECT * FROM employee WHERE user_name LIKE '[BDT]%'
就可以撈到你想要的資料範圍了!
Ref: http://msdn.microsoft.com/zh-tw/library/ms179859.aspx
●Yahoo關鍵字廣告/原生廣告
◆Yahoo廣告方案介紹 : https://goo.gl/5k8FHW
◆Yahoo廣告剖析與運用 : http://goo.gl/4xjUJD