bonne syntaxe, tout ce qui commence par une majuscule

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : bonne syntaxe, tout ce qui commence par une majuscule

Re: bonne syntaxe, tout ce qui commence par une majuscule

par albat » 10 mai 2012, 11:11

Ta syntaxe marche du tonnerre MAZA =D>
Sauf si ta valeur commence par :
- une lettre accentuée
- un chiffre
- un symbole (_ ou $ ou ...)

Re: bonne syntaxe, tout ce qui commence par une majuscule

par albat » 10 mai 2012, 11:10

WHERE substring(champ,1,1) = upper(substring(champ,1,1))

Re: bonne syntaxe, tout ce qui commence par une majuscule

par Megadeth » 10 mai 2012, 11:06

Bonjour,

MERCI à tous pour vos interventions respectives.

Ta syntaxe marche du tonnerre MAZA =D>

Mega
;)

Re: bonne syntaxe, tout ce qui commence par une majuscule

par popy » 10 mai 2012, 09:49

WHERE champ COLLATE utf8_cs LIKE 'A%'

Re: bonne syntaxe, tout ce qui commence par une majuscule

par Mazarini » 10 mai 2012, 09:15

Peut être :
where SUBSTR(champ2,1,1) between 'A' and 'Z'

Re: bonne syntaxe, tout ce qui commence par une majuscule

par nhachet » 09 mai 2012, 17:53

La clause REGEXP permet de faire ça :
SELECT * FROM table WHERE champ REGEXP "^[A-Z]*"
http://dev.mysql.com/doc/refman/5.0/fr/regexp.html

Edit : Après quelques recherches, bémol :
REGEXP is not case sensitive, except when used with binary strings.
Pour convertir une table de latin1 vers latin case sensitive (de même pour l'UTF8) :
ALTER TABLE <name> CONVERT TO CHARACTER SET latin1 COLLATE latin_general_cs 

Re: bonne syntaxe, tout ce qui commence par une majuscule

par Calimero » 09 mai 2012, 17:51

Bonjour Calimero,

C'est un champ texte classique, tout en utf8.
Comme le signale popy ci-dessus, le comportement de LIKE, en particulier vis-à-vis de la casse, va varier suivant l'interclassement (certains sont case sensitive [CS], d'autre case insensitive [CI]). Tu nous donnes là le charset, mais pas l'interclassement ;)

Tu dois pouvoir t'en sortir avec une batterie de LIKE "A%" OR LIKE "B%" OR ... et l'interclassement qui va bien, ou encore avec une regexp mysql.

Re: bonne syntaxe, tout ce qui commence par une majuscule

par popy » 09 mai 2012, 17:39

cast ton champs en utf8_cs avant de faire ton like.

Re: bonne syntaxe, tout ce qui commence par une majuscule

par Megadeth » 09 mai 2012, 17:37

Bonjour Calimero,

C'est un champ texte classique, tout en utf8.

En PHP j'ai ma p'tite idée (et encore :roll:) mais en pur mysql :-k

Mega

Re: bonne syntaxe, tout ce qui commence par une majuscule

par Calimero » 09 mai 2012, 17:24

Bonjour,

Je voulais savoir s'il existait une syntaxe particulière sous mysql pour dire à ma requête : sélectionne moi tout ce qui commence par une majuscule

SELECT champ1,champ2 WHERE champ2 commence par une majuscule comprise entre A et Z

Cordialement,

Mega
;)
Hello,

Pour une réponse précise il faudrait connaître le type de champ et l'interclassement :)

bonne syntaxe, tout ce qui commence par une majuscule

par Megadeth » 09 mai 2012, 17:03

Bonjour,

Je voulais savoir s'il existait une syntaxe particulière sous mysql pour dire à ma requête : sélectionne moi tout ce qui commence par une majuscule

SELECT champ1,champ2 WHERE champ2 commence par une majuscule comprise entre A et Z

Cordialement,

Mega
;)