2

「キーワード」という名前の長いテキスト フィールドを持つ求人のテーブルがあります。

一部のキーワードを一致させ、他のキーワードを除外できる SELECT ステートメントを作成しようとしています。

たとえば、「キーワードに「ポートレート」という単語が含まれるすべての仕事を教えてください。ただし、「アウトドア」という単語が含まれる仕事は除外します」という SQL が必要です。

ありがとう![質問を修正する必要がある場合、または追加情報が必要な場合は、お知らせください。]

4

2 に答える 2

7

どうですか:

. . . WHERE keywords LIKE '%portraits%' AND keywords NOT LIKE '%outdoors%' . . .

より良いアプローチは、ジョブのキーワードの別のテーブルを定義することです。ジョブとキーワードの組み合わせごとに 1 つの行があります。適切なインデックスを作成すると、一致するキーワードの有無にかかわらず、求人の検索を大幅に高速化できます。

于 2013-07-10T14:43:05.543 に答える
3
SELECT * 
FROM [table_name]
WHERE keywords like '%portraits%'
  AND keywords not like '%outdoors%';
于 2013-07-10T14:44:02.287 に答える