-1

次のようなテーブルに文字列 ($string) と列 (DOMAIN) があります。

$string="'domain3','domain2,'domain1'";
-----------------
|     DOMAIN    |
|---------------|
|     domain1   |
|     domain2   |
|domain1,domain2|
-----------------

また、ドメインが文字列に含まれている場合に結果を返す SQL クエリを作成しようとしています。私が見つけたのは、列のエントリを分割する必要があるため、次のようなものです。

SELECT * FROM TABLE1 WHERE SUBSTRING_INDEX(DOMAIN, ',', 1) IN ('$string')

しかし、これは最初のインデックスが一致する場合にのみ結果を返します。一種のループを実行したいのです。私の質問が十分に明確かどうかはわかりませんが、コンテキストを説明するために、チェックボックスを使用して結果をフィルタリングしようとしています。ありがとう!

4

1 に答える 1

1

結果として得られるものは正しいです。最初のインデックスからのみ部分文字列を作成します。mysql で爆発機能を探しているもの。

文字列分割の問題に対する多くの解決策について、このページのコメントを読むことができます: http://dev.mysql.com/doc/refman/5.0/en/string-functions.html

于 2013-03-08T10:36:34.650 に答える