假設我有以下t-sql:包含子句sql服務器
select * from customer where contains(suburb, '"mount*"')
。
現在它帶回兩個:「山山」和「藍山」。我怎樣嚴格搜索這個詞的開頭,在這個例子中只是「Mount Hills」?
謝謝
假設我有以下t-sql:包含子句sql服務器
select * from customer where contains(suburb, '"mount*"')
。
現在它帶回兩個:「山山」和「藍山」。我怎樣嚴格搜索這個詞的開頭,在這個例子中只是「Mount Hills」?
謝謝
'contains'正好用於此。使用
select * from customer where charindex('mount', suburb)=1
或
select * from customer where suburb like 'mount%'
但這是慢。
你的查詢工作正常,你詢問服務器「給我所有記錄哪裏有任何字在'郊區'的字'開始'安裝'。 你需要更具體的你想要完成什麼。匹配存儲在列中的整個值的開始?那就是你的朋友。
hhmm ...'mount'這個詞僅僅是一個例子。實際的輸入是不同的,不限於「掛載」字樣。 – user384080 2010-11-04 05:32:41
難道你只是在這種情況下使用charindex(@variablename,suburb)= 1嗎? – 2010-11-04 06:36:38