PHPクエリには次のものがあります。
SELECT tags.tag, theValues.*
FROM ch09.tbl_tags tags
RIGHT JOIN ((SELECT 'dog' as 'Vals')
UNION (SELECT 'cat' as 'Vals')) theValues on tags.tag = theValues.Vals
「RIGHTJOIN」の後、括弧内のすべてがユーザー入力からその場で作成されます。
MySQL 4では正常に機能しましたが、新しいコンピューターを使用して5.5をインストールし、SQLダンプをとしてインポートしましたUTF-8
。しかし、私は得ます:
"操作'='の照合(latin1_swedish_ci、IMPLICIT)と(utf8_general_ci、COERCIBLE)の不正な組み合わせ"
クエリを作成するためのより良い方法がおそらくあります。必要なのは、ユーザーが1つの列に「Vals
」として入力するすべてのものです。一致するタグがあるtbl_tags.tag
場合は「tag」という列にあるはずです。それ以外の場合はタグ列は空白です。
Collateを使用してみました:http ://www.answermysearches.com/mysql-fixing-illegal-mix-of-collations-message/352/ 、しかし私はそれを動作させることができません。
したがって、より良いクエリを作成するか、何らかの方法で照合関数を使用する必要がありますが、どのようにしたらよいでしょうか。
前もって感謝します。
クレイグ