La table table1 contient 9000 enregistrements (dont 1000 validés et 8000 pas encore).
La table table2 contient les 1000 enregistrements validés;( les enregistrements validés qui existent deja dans la table table1).
Je veux faire une requette pour afficher le contenu des 2 tables sans répétition.
mais avec l'affichage des enregistrements de la table table2 avant la table1.
par exemple :
j ai
table1(1,nom1,adr1)(2,nom2,adr2)(3,nom3,adr3)(4,nom4,adr4)(5,nom5,adr5)
table2(2,nom,adr2)(5,nom5,adr5)
on affichage j'aurai :
(2,nom,adr2)
(5,nom5,adr5)
(1,nom1,adr1)
(3,nom3,adr3)
(4,nom4,adr4)
younes371
Messages postés502Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012 8 janv. 2007 à 13:23
Merci pour l'aide,
je travail sur un site qui est daja fait par une autre Ste, alors je peux pas modificer une base qui contient 100 tables et plus de 20 000 Enregistrements.
Pour mon probleme, je dois forcementfaire une seule requette (coté php)!.
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 8 janv. 2007 à 16:07
Non ma requête est foireuse de toute manière.
ceci dit...c'est mal foutu comme système.
Je ne pense pas que tu pourras extraire ça en UNE seule requête.
Sauf à faire un traitement en PHP ensuite, derrière.
younes371
Messages postés502Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012 9 janv. 2007 à 10:29
j'ai fait ça :
select id from table1 where id not in( select id from table2)
UNION ALL
select id from table2
order by id
moi je veux dans order by , afficher les resultats de la table2 et puis les resultats de la table1.
Merci.
Coucou747 : merci, j'ai testé ce que tu m'as donné, mais ça donne des erreurs
younes371
Messages postés502Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012 10 janv. 2007 à 10:00
Merci a tous
comme vous avez dit, il falait faire 2 requettes, mais j'avais un seul problème c'est que j'affiche le resultat sur plusieurs pages !.
mais maintenant j'ai pas resolu le probleme grace a vos aides .
Merci
younes371
Messages postés502Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012 10 janv. 2007 à 13:19
Oui, c'est reglé merci a vos aides,
2 requettes plus un teste à l'affichage des resultats du 2eme requettes,
"on n'affiche le resultat du 2ème requette que si on a plus de resultat du premiere requette".
Merci.
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 10 janv. 2007 à 18:36
Coucou > pourquoi ça serait forcément possible ? au contraire là on a bien vu que en tout cas, on a pas trouvé de solution en une seule requête (ce qui ne veut pas dire que ce n'est pas possible, mais honnêtement, je doute que ça le soit).
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 11 janv. 2007 à 13:18
Salut,
Lieber Antho, as tu déjà fait un tour dans un livre de MYSQL ? Selon eux, tout est possible, quand tu sais quels sont les contraites, il te restes à demander à mysql de te découper tes lignes.... Le plus compliqué, c'est de séléctionner trop de lignes, ensuite, pour les choisir, ça va tout seul...
In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy
Mon site (articles sur la programmation et programmes)
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 11 janv. 2007 à 13:24
Tout est possible, à condition de bien structurer ta base de données. On ne peut pas demander à mysqlk de palier aux erreurs de conception. Et là, il y en a une.
Je n'affirme pas que c'est impossible en une seule requête, mais j'émets de sérieux doutes aussi. En tous cas, je n'ai pas trouvé de moyen de le faire.
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 11 janv. 2007 à 19:38
Mouais en même temps, si un manuel te dit qu'avec le super parachute machin tu peux te jeter du haut de la tour effeil et ouvrir le parachute 10 mètres avant le sol, crois-le sur parole si tu veux, mais je ne tenterai pas l'expérience ... XD et comme l'a dit Malalam, quand t'as une mauvaise conception, MySQL ne peut y pallier, dans le cas présent, on ne peut pas le faire en une seule requête ;)
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 12 janv. 2007 à 13:29
Salut,
si on m'envoyait le message d'erreur de ma requette ou bien les insert into qui permettent de créer la base, je veux bien tenter de vous prouver le contraire...
In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy
Mon site (articles sur la programmation et programmes)