Requête sql particulière
guadoc
Messages postés
70
Date d'inscription
Statut
Membre
Dernière intervention
-
Reivax962 Messages postés 3672 Date d'inscription Statut Membre Dernière intervention -
Reivax962 Messages postés 3672 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je possède une table "personne" avec les champs suivants:Nom ,Matricule
J'aimerais faire une sélection SQl sur cette table avec le critères suivants: je ne sélectionne que les noms dont le matricule commence par 'N' et est suivis que des chiffres.
Si quelqu'un a une idée du code de la requête SQL?
Je ne sais pas si cela est possible en SQL. Ma base est sous access alors s'il existe une autre solution sous access pour faire cette sélection je suis preneur.
Merci d'avance pour vos contributions.
Je possède une table "personne" avec les champs suivants:Nom ,Matricule
J'aimerais faire une sélection SQl sur cette table avec le critères suivants: je ne sélectionne que les noms dont le matricule commence par 'N' et est suivis que des chiffres.
Si quelqu'un a une idée du code de la requête SQL?
Je ne sais pas si cela est possible en SQL. Ma base est sous access alors s'il existe une autre solution sous access pour faire cette sélection je suis preneur.
Merci d'avance pour vos contributions.
A voir également:
- Requête sql particulière
- Logiciel sql - Télécharger - Bases de données
- Sql lister les tables ✓ - Forum Programmation
- Requête bloquée par le pare-feu applicatif claranet webfence ✓ - Forum Réseaux sociaux
- Jointure sql ✓ - Forum MySQL
- Erreur lors de l'envoi de la requête facebook - Forum Facebook
3 réponses
regarde du coté de la fonction like
Ta requète serait un truc dans le genre :
Ta requète serait un truc dans le genre :
select * from personne Matricule like ' [Nn][0-9%]'
Bonjour,
Honnêtement, je n'ai pas trouvé de façon de dire "qui ne contient que des chiffres après une lettre". Sauf si tu sais par avance combien de chiffre il y a.
Par exemple, s'il y a forcément 8 chiffres, tu peux écrire :
select * from personne where matricule like 'N[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' ;
Par contre, on peut facilement dire "qui contient N puis de contient aucune lettre" :
select * from personne where matricule like 'N[0-9]%' AND NOT LIKE 'N%[a-zA-Z]%'
Si il y a des accents ou des caractères spéciaux, il faut les rajouter entre les crochets.
Le [0-9] dans la première clause avant le AND permet de filtrer plus de lignes pour accélérer la requête sur la ligne suivante, qui peut être longue...
Xavier
Honnêtement, je n'ai pas trouvé de façon de dire "qui ne contient que des chiffres après une lettre". Sauf si tu sais par avance combien de chiffre il y a.
Par exemple, s'il y a forcément 8 chiffres, tu peux écrire :
select * from personne where matricule like 'N[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' ;
Par contre, on peut facilement dire "qui contient N puis de contient aucune lettre" :
select * from personne where matricule like 'N[0-9]%' AND NOT LIKE 'N%[a-zA-Z]%'
Si il y a des accents ou des caractères spéciaux, il faut les rajouter entre les crochets.
Le [0-9] dans la première clause avant le AND permet de filtrer plus de lignes pour accélérer la requête sur la ligne suivante, qui peut être longue...
Xavier
Le % à l'intérieur des crochets ne représente que le caractère %... du moins sous SQL Server.
Xavier
Le % à l'intérieur des crochets ne représente que le caractère %... du moins sous SQL Server.
Xavier
Le % à l'intérieur des crochets ne représente que le caractère %... du moins sous SQL Server.
Xavier
MDR !
Je ne sais pas comment se représente un suit de caractères numériques...
Après recherche, j'ai trouvé ca :
Mais il est vrai que ça a ramé, pour me dire au final que ça avait échoué :p