1

@Descriptionストアドプロシージャ(VARCHAR)にパラメータを渡しています。パラメータはのようなものである可能性がありますthe bookthe列にとの両方が含まれているレコードを返したいbook

これらのレコードは次を返します。

  • the green book
  • the huge orange book

パラメータをスペースで分割するsplit関数があり@Descriptionますが、これをwhere句に含める方法がわかりません...@Descriptionパラメータがである場合も無視する必要がありますNULL

免責事項:これが以前に尋ねられた場合はお詫び申し上げます...しばらく検索しても何も見つかりませんでした。

4

1 に答える 1

2

パラメータにすべての単語が含まれる結果が必要な場合は、次のようにすることができます。

SELECT A.YourFields
FROM YourTable A
INNER JOIN (SELECT *, COUNT(*) OVER() Total FROM dbo.Split(@Description)) B
ON A.YourField LIKE '%' + B.Data + '%'
GROUP BY A.YourFields
HAVING COUNT(*) = MAX(B.Total)
于 2012-04-20T13:38:00.573 に答える