私はSQLを初めて使用しますが、(SQLサーバーを使用して)学びたいと思っています。
私のデータテーブルには次のものがあります:
[キーワード] 、[参照元] 、[訪問数] 列
キーワード列に重複した値があります。
[キーワード] に含まれる値の例
google
google analytics
how to use google analytics
bing
bing vs google
私の KeywordDefinition テーブルには次のものがあります。
[Keyword Branded ID] [Keyword Branded Group]
google branded google
bing branded bing
キーワード列には一意の値しかないため、これがキーになります。
LEFT OUTER JOIN を使用して [Keyword Branded Group] をデータ テーブルに挿入しています。これにより、実際には、google と bing のどちらに一致するかに基づいて、すべてのキーワードにラベルが割り当てられます。
SELECT
ISNULL(c1.[Keyword Branded Group],'Other Branded') AS [Keyword Branded Group],
a.*
FROM [mychoice-data-b9BwZvd] a
LEFT OUTER JOIN [mychoice-keyworddims] c1 ON a.[Keyword] LIKE '%'+ c1.[Keyword Branded ID] +'%'
ただし、私の問題は、「bing vs google」が Google と Bing の両方に一致するという事実に基づいて、余分な行が発生することです。とにかくこれは私の理解です。
データ テーブルの元の行数を保持し、新しい列 [Keyword Branded Group] をコンマ区切りの値「Branded Google, Branded Bing」として行数を増やす代わりに使用できると誰かが提案しました。
悲しいことに、彼らはそれ以上何も言わず、どの SQL コマンドを調べたらよいかわかりません! 誰でも助けることができますか?正しい方向に向けてくれる人が必要なだけです!
ありがとうございました!