Précédent   Forum des professionnels en informatique > Bases de données > Oracle > SQL
SQL Forum d'entraide sur le SQL pour Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/07/2011, 09h21   #1
Membre Expert
 
Avatar de sat83
 
Homme
Développeur informatique
Inscription : mars 2004
Messages : 978
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : mars 2004
Messages : 978
Points : 1 177
Points : 1 177
Par défaut Clause LIKE sur les sauts de ligne

Bonjour à tous,
Je souhaiterais effectuer une requête qui me retourne tous les enregistrement qui contiennent un saut de ligne, et je ne trouve pas comment faire dans la clause WHERE...LIKE pour filtrer les sauts de lignes...

Code :
1
2
3
-- FILTRER CHAMPS CONTENANT DES ESPACES ' '
SELECT * FROM MA_TABLE
WHERE MON_CHAMP LIKE '% %'
Merci d'avance pour votre aide!
__________________
Ce que l'on apprend par l'effort reste toujours ancré plus longtemps...
sat83 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2011, 09h42   #2
Expert Confirmé Sénior


 
Avatar de laurentschneider
 
Homme Laurent Schneider
Administrateur de base de données
Inscription : décembre 2005
Messages : 2 925
Détails du profil
Informations personnelles :
Nom : Homme Laurent Schneider
Localisation : Suisse

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Finance

Informations forums :
Inscription : décembre 2005
Messages : 2 925
Points : 4 547
Points : 4 547
Code :
SELECT * FROM MA_TABLE WHERE MON_CHAMP LIKE '%'||chr(10)||'%'
ou alors en regexp

Code :
SELECT * FROM t WHERE regexp_count(x,'$',1,'m')>1;
__________________
Mon blog : laurentschneider.com
Mon livre : Advanced Oracle SQL Programming
laurentschneider est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2011, 09h42   #3
Membre Expert
 
Avatar de sat83
 
Homme
Développeur informatique
Inscription : mars 2004
Messages : 978
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : mars 2004
Messages : 978
Points : 1 177
Points : 1 177
Comme d'habitude, c'est 5 minutes après avoir posé la question qu'on trouve la solution:

Code :
1
2
SELECT * FROM MA_TABLE
WHERE MON_CHAMP LIKE '%' || CHR(10) || '%' --CHR(13)
Désolé d'avoir "pollué" le forum

[EDIT:] Merci laurentschneider, j'avais finalement trouvé au même moment...
__________________
Ce que l'on apprend par l'effort reste toujours ancré plus longtemps...
sat83 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2011, 09h44   #4
Membre confirmé
 
Homme Grégoire MARTIN
Ingénieur développement logiciels
Inscription : janvier 2011
Messages : 128
Détails du profil
Informations personnelles :
Nom : Homme Grégoire MARTIN
Âge : 32
Localisation : France, Hauts de Seine (Île de France)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Finance

Informations forums :
Inscription : janvier 2011
Messages : 128
Points : 225
Points : 225
Bonjour,

Passe par le code ascii :

retour chariot => 13.
Saut de ligne => 10

Ensuite fait un :

Code :
1
2
3
 
SELECT * FROM MA_TABLE
WHERE INSTR(MON_CHAMP,chr(13)) > 0
pour avoir tous les champs contenant un retour chariot

cordialement.
ORA-007 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h20.


 
 
 
 
Partenaires

Hébergement Web