0
我有一個表樣本數據的列如下:表值函數
ServiceTypeIds
7,1
1,9
1
9
4
7
7
在我的Where子句我使用以下方法來搜索就可以了:
WHERE(@ServiceTypes IS NULL OR CHARINDEX(','+CAST(SEP.ServiceTypeIDs as VARCHAR(255))+',', ','[email protected]+',') > 0)))
如果我PARAM @ ServieTypes等於'1,9',那麼我會得到結果,但是當它的@ServiceTypes ='1'或'9'時,我不會收到任何迴應。表格設計很差,但我沒有足夠的時間來創建新表格並修改c#代碼。我試圖使用表值函數,但由於ServiceTypeIds不是主鍵列,它沒有工作。任何人都可以幫忙嗎?
你可能有一些空間,請嘗試使用'LIKE' – bjan 2012-07-30 04:04:24
檢索結果有列沒有空格,也沒有空格在參數中 – 2012-07-30 04:06:26
更改CHARINDEX中參數的位置。 'CHARINDEX(','+ @ ServiceTypes +',',','+ CAST(SEP.ServiceTypeIDs as VARCHAR(255))+',')'[CHARINDEX](http://msdn.microsoft.com/zh-cn/ us/library/ms186323.aspx) – bjan 2012-07-30 04:22:18