2016-05-24 5 views
2

私は、多数の製品を格納するMySQLテーブルを持っています。いくつかの間違いで、私は製品名の一部に新しい行を追加しました。私はそれらを見つける必要があります。ベロークエリーは、予想されるすべてのデータをリストしているわけではありません。MySQLの新しい行を含むテキストを検索

SELECT * FROM `products` WHERE `product_name` REGEXP "\r\n"; 
+0

のために働かなければならない、あなたはその文字を削除したいですか? –

+0

いいえ、私はIDを選択したいだけです。 – Shin

+0

sql- を実行するだけです。SELECT id FROM 'products' WHERE' product_name' REGEXP "[\ n \ r]"; –

答えて

2

を試してみてください。 異なるテキストエディタプログラムは、新しい行を書き込むために異なる方法を使用します。

「\ n」または「\ r」と「\ n」の組み合わせのみを使用してください。ほとんどのケースで動作するはず

+0

' \ r'(MacOS 9以前)では動作しないかもしれません。 –

1

それはあなたが新しい行に使用どのような方法で依存

SELECT * FROM `products` WHERE `product_name` REGEXP "\n" or `product_name` REGEXP "\r"; 
+0

'\ r'(MacOS 9以前) –

+0

@rev_dihazum更新されました – Nikem

1

http://sqlfiddle.com/#!9/f74000/2

SELECT * FROM `products` WHERE `product_name` REGEXP "\n"; 

:私にとって

はこれを働きましたMacOS 9以前)および\r\n(Windows))。

だから、あなたに怒鳴る試みることができる:

SELECT * FROM `products` WHERE `product_name` REGEXP "\n" OR `product_name` REGEXP "\r"; 
2

ラインセパレータはOSすなわち\n(LinuxおよびMacOS Xの)、\r(にOSを変化さ

SELECT * FROM `products` WHERE `product_name` REGEXP "\n"; 
0

を選択クエリ後に発見した後、あなた

SELECT * FROM `products` WHERE `product_name` REGEXP "[\n\r]"; 
関連する問題