2012-07-26 75 views
-10

我有一個SQL查詢應返回用戶文本的結果(如自由文本搜索),可以是單個字符或單詞或單詞的組合。
例如,如果我已經列命名爲「主體」和它的價值是Very long test,那麼我想查詢,可以給結果,如果我把testt或`e'in以下搜索框工作就像谷歌搜索

select Subject from [dbo].[Email] where Contains(Subject,'%usertext%') 

查詢我試着在代碼後面處理,然後將其作爲參數發送給查詢。 正在編輯這個問題,因爲這麼多的反對票。如果你不明白這個問題,請簡單點評一下,這樣我就可以更清楚地問一下。那會幫助我。

+2

向我們展示你的代碼.... – 2012-07-26 20:18:28

+0

這是一個有點難以幫助,如果我們不能看到代碼弄清楚什麼可能是錯誤的。 – David 2012-07-26 20:21:09

+2

想象一下,去一家汽車修理店,問他們我的汽車有什麼問題,當它不應該發出噪音時。他們如何在不檢查汽車的情況下知道他們的情況。我們需要查看你的代碼,以便我們看到問題可以幫助你。 – 2012-07-26 20:22:47

回答

0

您不需要%字符,因爲函數Contains已經暗示了這一點。
所以:

select Subject from [dbo].[Email] where Contains(Subject,'t') 

%LIKE功能

select Subject from [dbo].[Email] where Subject LIKE '%t%' 
+0

感謝天蠍座現在部分工作。我想讓它像Google搜索一樣工作,同時希望避免sql注入。我會深入挖掘。感謝大家爲你的時間。 – osaka 2012-07-27 14:45:23