OVH Cloud OVH Cloud

Aide pour construire une requête

1 réponse
Avatar
Julien
Bonjour,

Voilà mon problème. J'ai une table qui si je la réduis pour l'exemple
ressemblerait à ça :

TABLE1
______________________
POINA POINB VALEUR
______________________
000 000 1
000 015 2
015 075 3
145 250 4
145 160 5
160 190 6
190 250 7
250 360 8
...

Mon problème est de pouvoir sélectionner tous les champs dont le POINA >=
145 et POINB <= 250
On appelle couple : POINA avec POINB.
Il faut que je sélectionne tous les champs avec un maximum de coupes
étroites consécutives.

C'est à dire ramener les lignes pour les couples (POINA"-"POINB) :
145-160
160-190
190-250

et PAS :
145-250 (coupe la plus large)

NI :
145-200
200-250 (car il y a des coupes plus étroites).

C'est pas très évident à expliquer, je ne sais pas si ce que j'ai écris est
compréhensible.

Si oui, quelqu'un aurait une idée pour résoudre ça ? Je tourne en ronds...
:(


Merci !

1 réponse

Avatar
bruno reiter [MVP]
Peut etre ça peut te mettre sur la voie :

SELECT A.poinA, min(A.poinB)
FROM
(SELECT poinA, poinB
FROM TABLE
WHERE poinA >= 145 AND poinB <= 250 ) as A
GROUP BY A.poinA


br

br

"Julien" wrote in message
news:bqicsk$piq$
Bonjour,

Voilà mon problème. J'ai une table qui si je la réduis pour l'exemple
ressemblerait à ça :

TABLE1
______________________
POINA POINB VALEUR
______________________
000 000 1
000 015 2
015 075 3
145 250 4
145 160 5
160 190 6
190 250 7
250 360 8
...

Mon problème est de pouvoir sélectionner tous les champs dont le POINA > > 145 et POINB <= 250
On appelle couple : POINA avec POINB.
Il faut que je sélectionne tous les champs avec un maximum de coupes
étroites consécutives.

C'est à dire ramener les lignes pour les couples (POINA"-"POINB) :
145-160
160-190
190-250

et PAS :
145-250 (coupe la plus large)

NI :
145-200
200-250 (car il y a des coupes plus étroites).

C'est pas très évident à expliquer, je ne sais pas si ce que j'ai écris est
compréhensible.

Si oui, quelqu'un aurait une idée pour résoudre ça ? Je tourne en ronds...
:(


Merci !