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Ă© ?

#1 Wed 17 September 2008 15:34

JEJE33
Participant actif
Lieu: Bordeaux
Date d'inscription: 29 May 2007
Messages: 121

RequĂȘte SQL

Bonjour
J'ai un peu la honte de poser cette question mais la franchement je bloque pour une requĂȘte SQL.
Voilà en fait je veux extraire d'une classe d'entité courbes de niveaux toutes les courbes de niveaux qui ont une décimale (1.5, 2.5, etc....)
Mon champ contenant la valeur d'altitude est un numĂ©rique, un rĂ©el double pour ĂȘtre prĂ©cis.
Et lĂ  je bloque
j'ai bien essayé quelque chose comme cela mais cela ne me retourne aucun enregistrement

Select *
From Table
Where  Z LIKE '%,%'

Est ce que quelqu'un à un idée?
Merci

Hors ligne

 

#2 Wed 17 September 2008 15:49

Marc Ruffie
Participant actif
Lieu: Schilik
Date d'inscription: 31 Jul 2007
Messages: 64
Site web

Re: RequĂȘte SQL

JEJE33 a écrit:

Select *
From Table
Where  Z LIKE '%,%'


Bonjour,
as tu essayé de remplacé les % par des *?

En espérant t'aider, a plus
Marc


Sauvez un arbre, mangez un castor!

Hors ligne

 

#3 Wed 17 September 2008 15:57

JEJE33
Participant actif
Lieu: Bordeaux
Date d'inscription: 29 May 2007
Messages: 121

Re: RequĂȘte SQL

Bonjour Marc
Merci pour ta réponse mais malheureusement cela ne fonctionne pas mieux.
Je continue de chercher.
Merci de ton aide

Hors ligne

 

#4 Wed 17 September 2008 16:06

Marc Ruffie
Participant actif
Lieu: Schilik
Date d'inscription: 31 Jul 2007
Messages: 64
Site web

Re: RequĂȘte SQL

[Ruse de sioux = On]
Tu peux créer un champ (Z_ent) de type entier qui reprend les valeurs de Z
AprÚs, tu sélectionnes les valeurs ou Z <> Z_ent
[Ruse de sioux = Off]

A plus
Marc


Sauvez un arbre, mangez un castor!

Hors ligne

 

#5 Wed 17 September 2008 16:10

freesnowpetrel
Participant assidu
Lieu: Pretoria, Afrique du Sud
Date d'inscription: 1 Mar 2007
Messages: 222

Re: RequĂȘte SQL

Bonjour,

Solution:

Select * From Table Where "tonchamp" <> ROUND("tonchamp",0)

Ton champ est comme tu le precises de type numerique tu ne peux donc pas utiliser des fonctions SQL dedies aux champs de type texte, a moins de convertir ton champ en texte. Il te faut donc utiliser des fonctions numeriques comme round qui renvoie un arrondi de la valeur avec le nombre de decimales en deuxieme parametre. Ici si ton nombre n'est pas egal a son arrondi a 0 decimales (autrement dit si mon nombre n'est pas entier) je le selectionne.

A+

Rodolphe

Dernière modification par freesnowpetrel (Wed 17 September 2008 16:17)

Hors ligne

 

#6 Wed 17 September 2008 16:23

JEJE33
Participant actif
Lieu: Bordeaux
Date d'inscription: 29 May 2007
Messages: 121

Re: RequĂȘte SQL

freesnowpetrel a écrit:

Bonjour,

Solution:

Select * From Table Where "tonchamp" <> ROUND("tonchamp",0)

Ton champ est comme tu le precises de type numerique tu ne peux donc pas utiliser des fonctions SQL dedies aux champs de type texte, a moins de convertir ton champ en texte. Il te faut donc utiliser des fonctions numeriques comme round qui renvoie un arrondi de la valeur avec le nombre de decimales en deuxieme parametre. Ici si ton nombre n'est pas egal a son arrondi a 0 decimales (autrement dit si mon nombre n'est pas entier) je le selectionne.

A+

Rodolphe


Bonjour Rodolphe
Merci pour ta solution qui fonctionne super bien
Merci Ă  tous ceux qui ont  rĂ©pondu
JérÎme

Hors ligne

 

#7 Wed 17 September 2008 20:34

olive
Participant occasionnel
Lieu: Auch
Date d'inscription: 5 Sep 2005
Messages: 37
Site web

Re: RequĂȘte SQL

Et ceci :

SELECT *
FROM Table
WHERE right(Z,2) like ',5';

Ă  adapter ?
remarque : n'est valable que si ton champ est en texte evidement

commentaire moderation : Les réponses se sont croisées, ça ne servira pas pour ce cas, mais on n'utilise trop peu les fonctions VB pour le SQL made in ArcGIS...


Olivier Barasz
Responsable du PÎle Cartographie et Décisionnel
Département du Gers

Hors ligne

 

#8 Fri 19 September 2008 11:20

JEJE33
Participant actif
Lieu: Bordeaux
Date d'inscription: 29 May 2007
Messages: 121

Re: RequĂȘte SQL

olive a écrit:

Et ceci :

SELECT *
FROM Table
WHERE right(Z,2) like ',5';

Ă  adapter ?
remarque : n'est valable que si ton champ est en texte evidement

commentaire moderation : Les réponses se sont croisées, ça ne servira pas pour ce cas, mais on n'utilise trop peu les fonctions VB pour le SQL made in ArcGIS...


Bonjour Olive
Merci pour ta réponse
j'ai testé cette solution sur un autre classe d'entité avec un champ de type texte et effectivement ce la fonctionne
Merci pour ta réponse

JérÎme

Hors ligne

 

Pied de page des forums

Copyright Association GeoRezo