2012-08-25 67 views
1

考慮這個如何找出搜索關鍵詞的全文本搜索發現

SELECT * 
FROM Publication a   
INNER JOIN CONTAINSTABLE(Publication, (Title, Keywords), 
@TitlePartial)TitleSearchPartial ON a.Id = TitleSearchPartial.[Key] 

我正在尋找在(TitleKeyword)的Publication表的列。 搜索關鍵字可以在「標題」或「關鍵字」中的任何位置找到 如何找到搜索關鍵字在哪個列中找到?有沒有一種現成的方式來做到這一點?

任何想法...

回答

0

你可以嘗試這樣的事:

SELECT *, 
    CASE 
     WHEN b.[Key] IS NOT NULL THEN 'Title' 
     WHEN c.[Key] IS NOT NULL THEN 'Keywords' 
     END AS MatchColumn 
FROM Publication a 
    LEFT JOIN CONTAINSTABLE(Publication, Title, @TitlePartial) b 
     ON a.Id = b.[Key] 
    LEFT JOIN CONTAINSTABLE(Publication, Keywords, @TitlePartial) c 
     ON a.Id = c.[Key] 
WHERE (b.[Key] IS NOT NULL 
     OR c.[Key] IS NOT NULL) 

您可能需要添加另一種情況爲兩列匹配。另外,不幸的是,我現在無法對此進行測試。