2010-03-19 79 views
1

希望你沒事。我必須建立一個Web項目(非常簡單)我將擁有一個帶有2個表的數據庫。一張桌子有兩個字段。 從網頁我需要一個谷歌喜歡的搜索查詢,例如我有表格上的電影標題和電影評論。 我需要能夠搜索到的2場是這樣的:C# - Google like query engine.-

"Best Movie" + Action 

我將需要查詢的數據庫搜索上的2場「最佳電影」串togheter加上任選的操作字表。

我清楚嗎? :)

是否有人知道這是否已經作出,如果it's公衆和自由,在哪裏得到它:)

編輯: 我關心的是對谷歌像符號轉換( 「」,+, - ,〜)構建一個有效的查詢。

+0

請提供一個清晰的輸入+查詢+輸出示例 – thelost 2010-03-19 14:40:49

回答

8

像Google一樣,聽起來好像你想要一個information retrieval引擎。你可能要考慮:

對於你在做什麼,它聽起來就像SQL Server全文索引將工作很好 - 如果你發現自己想要做更復雜的事情,那麼我建議你看看Lucene--它更復雜,而且你需要創建自己的索引,但是這樣做的額外控制意味着你可以執行遠程更復雜的搜索。

要了解有關SQL Server全文索引的更多信息,您最好不要進行谷歌搜索。

這篇文章可以幫助您開始:

+0

另外 - 值得指出的是,AjmeraInfo的解決方案要簡單得多,並且應該做到這一點,但是您會發現查詢對於較大的數據庫來說有點慢。 – Justin 2010-03-19 14:46:26

1

只是用這樣的查詢

首先你需要的字符串操作在C#中再通的價值。

 
SELECT [Movie Title] FROM Movie_TABLE WHERE 
Movie_Review Like '%' + 'Best Movie' + '%' And Movie_Review Like '%' + 'Action' + '%' 

,或者您需要與

 

DECLARE @qu nvarchar(max) 

SET @qu = 'Query' 

Exec (@qu) 

創建動態查詢你也可以傳遞參數的動態執行。