2016-07-18 94 views
0

私は苦情データセットに取り組んでいます&私はデータセットとキーワード辞書から一致するキーワードを探しています。Sql:複数のキーワードで苦情データセットを検索

サンプルキーワード辞書

------------------------- - ここ

は、キーワード辞書です

デビットカード

クレジットカード

ATM

ローン

サンプル・データ・セット -

enter image description here

そして、サンプル出力 -

enter image description here

で、私はからキーワードを希望キーワード辞書を一致させる私のデータセットの「クレームの説明」の列。そして、「一致するキーワード」列に一致するキーワードのみを表示したい場合は、「Count」列に一致する合計キーワードの数が&個あります。

これは単なるサンプルです&私の実際のデータセットは巨大で、外国語でも「苦情記述」が含まれている可能性があります。あなたはそれについて行く方法について私を助けることができますか?

ありがとうございます!

+0

私たちはおそらく「どうやってそれを手伝ってくれますか?しかし、それが何をしようとしているかははっきりしていません。ここから始めましょう。 http://spaghettidba.com/2015/04/24/how-to-post-a-t-sql-question-on-a-public-forum/ –

+0

問題の説明を編集しました。今私はそのことを願っています。ありがとう。 – 0nir

答えて

3

サンプルデータテーブルが[Sample Data-set]であり、キーワードが[Keyword](カラム名はKeyword)という表に保存されているとします。これを試してみてください:

WITH CTE AS 
(
SELECT Detail.*, [Keywords Matched] = STUFF((select ',' + Keyword 
    FROM KEYWORD as b 
    WHERE Detail.[Complaint Description] like '%' + b.Keyword + '%' 
    ORDER BY Keyword DESC 
    FOR XML PATH('')), 1,1,'') 
FROM [Sample Data-set] as Detail 
GROUP BY Detail.BranchID, Detail.Portfolio, Detail.[Complaint Description] 
) 
SELECT *, len([Keywords Matched]) - len(replace([Keywords Matched], ',','')) + 1 as [Count] 
FROM CTE 
GROUP BY BranchID, Portfolio, [Complaint Description], [Keywords Matched] 
+0

このソリューションは完璧に機能しました。感謝!! – 0nir

関連する問題