各レコードに割り当てられた「キーワード」の 5 つのフィールドがあります。
共通のキーワードを共有するレコードのみを選択して識別するクエリを作成したいと考えています。
つまり、「5 つのフィールドのいずれかに「環境」というキーワードが含まれていないレコードを表示してください」というようなものです。
私はこれにかなり慣れていないので、少しイライラしています。
助けてくれてありがとう!
各レコードに割り当てられた「キーワード」の 5 つのフィールドがあります。
共通のキーワードを共有するレコードのみを選択して識別するクエリを作成したいと考えています。
つまり、「5 つのフィールドのいずれかに「環境」というキーワードが含まれていないレコードを表示してください」というようなものです。
私はこれにかなり慣れていないので、少しイライラしています。
助けてくれてありがとう!
SELECT
* -- or whatever fields you need
FROM tablename
WHERE
keyword1='environment' -- maybe keyword1 LIKE '%environment%'
OR keyword2='environment'
OR keyword3='environment'
OR keyword4='environment'
OR keyword5='environment'
そうは言っても、DB 構造を再考する必要があります。これを行う標準的な方法は、テーブル、キーワード テーブル、および結合可能なテーブルを用意することです。
こうすればできる
.
SELECT
yourtable.*
FROM yourtable
INNER JOIN yourtable_keywords ON yourtable.ID is yourtable_keywords.yourtableID
INNER JOIN keywords ON keywords.ID is yourtable_keywords.keywordID
WHERE keywords.keyword='environment'