0

次のようなデータを含むフィールドがあるとします(各行は、さまざまな行のそのフィールドのデータを表します)。

28746: Porto Alegre
28302: Osasco
28797: Praia Grande

ただし、フィールドに複数の番号がある場合があります。

26755: Floriano Peixoto,26754: Floriano 25582: Bela Vista
25579: Bela Vista 25581: Bela Vista De Goiás,26867: Goiás

このデータが正規化されていないことは知っていますが、それは私が解決したい問題ではありません。

そのフィールドに複数の番号がある行のみを表示するクエリを作成できるかどうか疑問に思いました。

それを達成する方法について何か提案はありますか?

アップデート

Dark_aの答えから私はこれを試しました:

SELECT data_c1
  FROM test_data
  WHERE INSTR(data_c1,':',1,2) <> 0;

しかし、INSTRは引数のみを受け入れるようです。

http://dev.mysql.com/doc/refman/5.5/en/string-functions.html

ただし、この他のクエリを使用する場合:

SELECT data_c1
  FROM test_data
  WHERE INSTR(data_c1,',') <> 0;

複数の数値を含むフィールドのデータはコンマで区切られているため、正常に機能しているようです。

4

1 に答える 1

1

あなたはこれを試すことができます:

SELECT data_c1
  FROM test_data
 WHERE INSTR(data_c1,':',1,2) <> 0;

テキストでカンマが使用されている場合。そうでない場合は、コンマをチェックすることをお勧めします。

SELECT data_c1
  FROM test_data
 WHERE INSTR(data_c1,',',1,2) <> 0;
于 2012-12-17T09:44:31.700 に答える