[SQL] sélectionner des ligne avec seulement le début d'une chaîne

sélectionner des ligne avec seulement le début d'une chaîne [SQL] - Programmation

Marsh Posté le 28-06-2001 à 10:20:07    

par exemple sous unix si je veux tous les fichiers qui commencent par a, je fais :
 
ls a*
 
en SQL je voudrait faire un truc dans le même genre mais pour récupérer toutes les lignes dont le champ xxx contient une chaîne qui commence par 'A' et peut importe la suite
 
autre chose, trouver les lignes dont le champ xxx fait exactement
 4 caractères, possible ?

Reply

Marsh Posté le 28-06-2001 à 10:20:07   

Reply

Marsh Posté le 28-06-2001 à 10:25:31    

ALors.........
 
En SQL standard, tu as le mot-clé "LIKE", qui s'utilise comme suit :
 

Code :
  1. select * from matable where monchamp like "A%"
  2. select * from matable where monchamp like "%toto"
  3. select * from matable where monchamp like "%toto%"


 
Cas 1 : on sélectionne toutes les lignes pour lesquelles monchamp commence par le caractère "A" (c'est ton cas)
 
Cas 2 : on sélectionne toutes les lignes pour lesquelles monchamp se termine par la chaîne de caractères "toto"
 
Cas 3 : on sélectionne toutes les lignes pour lesquelles monchamp contient la chaîne "toto", peu importe sa place.
 
Attention à la casse!!!
 
Pour les lignes dont le champ xxx fait 4 caractères, là, tu dois avoir une fonction qui te renvoie la longueur d'une chaîne (en Sybase - SQL Server, c'est la fonction datalength()). Il faut trouver laquelle c'est dans ton système.
 
Ce qui donnerait un truc du genre :

Code :
  1. select * from matable where datalength(monchamp) = 4


 
A+

Reply

Marsh Posté le 28-06-2001 à 10:30:44    

thanks,
 
c exactement ce que je cherchais

 

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

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed