Précédent   Forum du club des développeurs et IT Pro > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 19/12/2012, 10h16   #1
infodevix
Invité de passage
 
Titi Toto
Inscription : décembre 2009
Messages : 7
Détails du profil
Informations personnelles :
Nom : Titi Toto

Informations forums :
Inscription : décembre 2009
Messages : 7
Points : 1
Points : 1
Par défaut Requête Sql sensible à la casse

Bonjour,

voila, j'aimerais trouver une fonction sql qui soit identique à un like '%MOTS%' mais qui soit sensible à la casse et au accents.....

exemple: la phrase "Bonjour à vous"

si je fais une recherche sur "bonjour", je ne dois rien trouver, mais si je fais une recherche sur "à" ou "Bonjour", je dois trouver !!!!

quelqu'un a une idée?
infodevix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2012, 11h07   #2
Bibeleuh
Membre éclairé
 
Avatar de Bibeleuh
 
Homme Richard
Développeur PL/SQL
Inscription : septembre 2010
Messages : 132
Détails du profil
Informations personnelles :
Nom : Homme Richard
Localisation : France

Informations professionnelles :
Activité : Développeur PL/SQL
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : septembre 2010
Messages : 132
Points : 348
Points : 348
J'ai peut être mal compris la question mais pour moi le LIKE est déjà sensible à la casse et aux accents...

En prenant votre exemple :

Code :
1
2
3
4
5
6
7
8
 
   WITH liste AS ( SELECT 'Bonjour à vous' phrase FROM DUAL )
 
    SELECT 'recherche1' FROM liste WHERE phrase LIKE '%bonjour%' 
    UNION 
    SELECT 'recherche2' FROM liste WHERE phrase LIKE '%Bonjour%' 
    UNION
    SELECT 'recherche3' FROM liste WHERE phrase LIKE '%à%'
Cette requête ramène bien une ligne pour la 2e et 3e recherche et pas pour la première
Bibeleuh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2012, 14h36   #3
Kropernic
Membre Expert
 
Avatar de Kropernic
 
Homme
Analyste / Programmeur / DBA
Inscription : juillet 2006
Messages : 1 924
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 30
Localisation : Belgique

Informations professionnelles :
Activité : Analyste / Programmeur / DBA
Secteur : Distribution

Informations forums :
Inscription : juillet 2006
Messages : 1 924
Points : 1 458
Points : 1 458
Cela dépend de la collation (jeux de caractères) utilisé par votre SGDB(R).

Une collation pourra par exemple sensible aux accents mais pas à la casse, une autre sera sensible aux deux et une troisième à aucun.

C'est à choisir avec attention.

EDIT : Plein d'infos ici
__________________
Kropernic (anciennement Griftou).
Kropernic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2012, 15h55   #4
SQLpro
Rédacteur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 12 074
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 12 074
Points : 21 669
Points : 21 669
Citation:
Envoyé par Bibeleuh Voir le message
J'ai peut être mal compris la question mais pour moi le LIKE est déjà sensible à la casse et aux accents...
Ca c'est du grand n'importe quoi !!!!

le LIKE, comme tout opérateur ou fonction SQL doit obéir à la collation spécifiée par les littéraux passés en argument...

je sais que certains pseudo SGBD non relationnels comme MySQL sont farcis de bugs de ce genre, mais pas la langage SQL !

Donc, si vous voulez gérer la casse ou les caractères diacritiques (accents, ligature...), ainsi que que le tri relatif à la langue, il suffit d'utiliser la bonne collation.

Exemple :
Code :
MaColonne COLLATE French_CS_AI LIKE '%toto%'
À me lire :
http://sqlpro.developpez.com/cours/s...er/collations/
http://sqlpro.developpez.com/cours/s.../?page=partie1
http://blog.developpez.com/sqlpro/p1..._grand_folklor

A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 30
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 18h48.


 
 
 
 
Partenaires

Hébergement Web