Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
4100 connectés 

 


Dernière réponse
Sujet : [SQL] Statement le moins restrictif pour une recherche
joce moi je parlais de MySQL :D
PE que oracle est case sensitif :)

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
joce moi je parlais de MySQL :D
PE que oracle est case sensitif :)
irulan :non:  
Sous Oracle, ça marche  :p
Je viens de tester :
Where Nom_Mois like 'NOV%' ne me renvoie que les lignes avec NOVEMBRE, alors que Where UPPER(Nom_Mois) like 'NOV%' me renvoie toutes les lignes de la table avec 'NOVEMBRE' ou 'Novembre' !
 
Et ma colonne de nom est un varchar2(10)...

 

[edtdd]--Message édité par irulan--[/edtdd]

joce

irulan a écrit a écrit :

1. Il suffit de convertir les 2 chaînes composant le critère en majuscule :
SELECT... FROM... WHERE UPPER(Nom_Colonne1) = UPPER(Nom_Colonne2)
 
2. caractère d'échappement = %
Exemple : WHERE Nom_mois LIKE 'Jan%' renverra tous les mois commençant par 'Jan'
Attention, WHERE Nom_mois LIKE 'Ma%' renverra Mars et Mai !
 
Un mix des 2 points précédents donnera :  
... WHERE UPPER(Nom_mois) like 'MA%'
et renverra indifféremment MARS, mars, MAI, mai, Mars, Mai...  




Le like ou le = n'est pas case sensitif si les champs sont pas avec la caractéristique  BINARY, donc le UPPER est inutile :)

speedyop j'avait vu unenouvelle possibilité de mysql mais je l'ai jamais mis en oeuvre:
 
http://dev.nexen.net/docs/mysql/an [...] Search.php
irulan 1. Il suffit de convertir les 2 chaînes composant le critère en majuscule :
SELECT... FROM... WHERE UPPER(Nom_Colonne1) = UPPER(Nom_Colonne2)
 
2. caractère d'échappement = %
Exemple : WHERE Nom_mois LIKE 'Jan%' renverra tous les mois commençant par 'Jan'
Attention, WHERE Nom_mois LIKE 'Ma%' renverra Mars et Mai !
 
Un mix des 2 points précédents donnera :  
... WHERE UPPER(Nom_mois) like 'MA%'
et renverra indifféremment MARS, mars, MAI, mai, Mars, Mai...
PIIBurner Bonjour,
 
Je souhaite faire une recherche sur des chaines de caractères et je souhaite que la requette SQL soit la moins restrictive possible:
1. comment ignorer les majuscules/minscules,
2. Quel est le caractère d'échappement (% en mySQL me semble t'il)
 
Merci d'avance!

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)