web-dev-qa-db-fra.com

Comment puis-je vérifier si un résultat SQL contient un caractère de nouvelle ligne?

J'ai une colonne varchar qui contient la chaîne lol\ncats, cependant, dans SQL Management Studio, il apparaît comme lol cats.

Comment puis-je vérifier si le \n existe-t-il ou non?

35
NibblyPig
SELECT *
FROM your_table
WHERE your_column LIKE '%' + CHAR(10) + '%'

Ou...

SELECT *
FROM your_table
WHERE CHARINDEX(CHAR(10), your_column) > 0
64
LukeH

Utilisez char(13) pour '\r' Et char(10) pour '\n'

SELECT *
FROM your_table
WHERE your_column LIKE '%' + CHAR(10) + '%'

ou

SELECT *
FROM your_table
WHERE your_column LIKE '%' + CHAR(13) + CHAR(10) + '%'
32
Sachin Shanbhag

Pour tous les autres utilisateurs de MySQL qui se retrouvent ici:

SELECT *
FROM your_table
WHERE your_column LIKE CONCAT('%', CHAR(10), '%')
6
Taran

Pour moi, ce qui suit a très bien fonctionné à la fois dans MySQL Workbench et HeidiSQL (avec MySQL) sans avoir à utiliser la variation de char() de \n:

SELECT * FROM table_name WHERE field_name LIKE '%\n%'
2
dksadiq
SELECT * 
FROM Table 
WHERE PATINDEX('%' + CHAR(13) + CHAR(10) + '%', Column) > 0
1
Nungster

Dans Oracle, essayez la commande ci-dessous

SELECT * FROM table_name WHERE field_name LIKE ('%'||chr(10)||'%');
1
Annie Jeba