Combiner 3 requètes [résolu] - SQL/NoSQL - Programmation
Marsh Posté le 13-12-2006 à 16:56:39
|
Marsh Posté le 13-12-2006 à 17:03:00
D'accord, mais là il va me retourner une ligne contenant 'champ1', 'champ2' et 'id' pour l'id inferieur, l'id superieur et l'id demandé.
Le plus simple pour moi serait de récuperer une seule ligne contenant toutes ces infos: champ1, champ2, id, id_superieur, id_inferieur
Marsh Posté le 13-12-2006 à 17:07:09
Code :
|
mais c'est pas bo
Marsh Posté le 13-12-2006 à 17:10:57
anapajari a écrit :
|
c'est même pire que ça, parceque si tu fais juste des >2 et <2, tu ramènes toute la base
donc faut refoutre des limit partout, ou des sous-sous-requête avec des max et min comme mon exemple.
ça devient clairement pas beau
Marsh Posté le 13-12-2006 à 17:18:49
ben si les id sont séquenciels et sans trous (truc impossible à garantir généralement), tu peux faire id + 1 et id - 1 au lieu de <2 et >2 ce sera déjà moins pire...
Marsh Posté le 13-12-2006 à 17:19:56
Oui, j'y ai bien pensé... mais si on suprime une de ces lignes bonjour les dégats...
Marsh Posté le 13-12-2006 à 17:20:51
bah ouais (d'où le "truc impossible à garantir généralement" )
Marsh Posté le 13-12-2006 à 17:22:06
sinon, avec Oracle ou SQL Server, tu peux utiliser des fonctions analytiques pour faire ça. Mais à mon avis les requêtes seront aussi pourries, et en plus tu vas récupérer des infos dont t'as pas besoin (genre un cumul progressif ou autre)
Marsh Posté le 13-12-2006 à 17:32:20
MagicBuzz a écrit : ça devient clairement pas beau |
je savais que ça te plairait ( mais pour les instructions qui manquent c'était flemme inside hein)
sinon tu prends les 3 premiers qui sont >= au min de ceux qui sont inférieurs à la valeur fixe.
Mais c'est pas encore super!
Marsh Posté le 13-12-2006 à 17:34:26
http://sqlpro.developpez.com/SQL_Server_2K5/N1.php
si mysql a le même genre de fonctions que le 1.7, alors y'a moyen de moyenner avec RANK()
Marsh Posté le 14-12-2006 à 12:37:25
Code :
|
Marsh Posté le 14-12-2006 à 14:21:20
tiens, je viens de m'appercevoir que j'avais mal lu la question depuis le départ
Marsh Posté le 13-12-2006 à 16:46:03
Bonjour,
je voudrais faire une requete mysql qui va me chercher les données relatives a un identifiant.
Jusque là rien de compliqué,
mais je voudrais que cette même requete me trouve l'identifiant inférieur et supérieur.
il faudrait en quelque sorte combiner ces 3 requetes:
How do this ?
Message édité par papanoramix le 14-12-2006 à 15:09:11