banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Tue 21 December 2004 08:47

Jmb-gsc
Invité

Chaine de caractere

Bonjour,
Je ne me rappelle plus la syntaxe pour recherche une chaine de caractere dans les donnees de ma table mapinfo.

exemple:

TYPE   NOM
raster  photoA
vecteur imageB
raster  inconnu
raster  image

a partir de ces enregistrement je voudrais sortir tout les enregistrement contenant la chaine image

Merci a vous.

JM

 

#2 Tue 21 December 2004 12:36

Annick Lagnion
Invité

Re: Chaine de caractere

par exemple:
like(nom, %image% , ) qui renvoie la valeur vrai ou faux.
select * from ma_table where like(nom, %image% , )  donne les
enregistrements qui contiennent image
select * from ma_table where not (like(nom, %image% , ))  donne les
enregistrements qui ne contiennent pas image.

like(nom, image% , ) cherche si ca commence par image
like(nom, %image , ) cherche si ca finit par image

ou alors instr(1,nom, image ) qui renvoie la position du debut de la chaine
image dans nom (en partant du 1er caractere; on peut mettre n si on veut
chercher a partir du n ieme caractere): si le resultat est 0 c'est que nom
ne contient pas image.
select * from ma_table where instr(1,nom, image )>0  donne les
enregistrements qui contiennent image
select * from ma_table where instr(1,nom, image )=0  donne les
enregistrements qui ne contiennent pas image.

ces 2 fonctions tiennent compte de la casse (majuscule / minuscule)

Si on ne sait pas si les mots sont en majuscule ou en minuscule, on peut
mettre lcase(nom) (ou Ucase(nom)) et ce qu'on recherche en minuscule (ou
en majuscules).
(lcase( Nom )= nom et ucase( Nom )= NOM )

par exemple like(lcase(nom), %image% , ) ou like(ucase(nom), %IMAGE% , )

Annick Lagnion
DDE29

 

Pied de page des forums

Powered by FluxBB