BD SQL Jointures

Répondre
MzDavid
le 13/06/2004 à 22:08
MzDavid
Coucou,
Je cherch mais pô Trouve :
Comment faire une requete sql
SELECT nom_Col
FROM Table_1,Table2
WHERE ...
pour avoir une réponse avec tout les tuples présent ds la table_1 meme s'il sont absents de la table_2...
Je veux trouver des tuples dans la table 1 qui ne font pas partie de la table 2 ou alors qui répondent à conditions (ds WHERE ?)
s'possible ?
merci bcp`
biz, Dav.
coucou la globule !
MzaDvid
moogli
le 13/06/2004 à 22:55
moogli
Eu t'es pa tro clair,
comment sont tes tables et sur quels critères te base tu pour ta selection
pour la recherche de tout les tuples de la table1 qui ne sont pas dans la table2
Select * FROM table1,table2 where nomduchamp.table1 != nomduchamp.table2;
Il en faut peu pour être heureux !!!!!
MzDavid
le 13/06/2004 à 23:20
MzDavid
c pas table1.nom_du_Champ ds WHERE ?

Alors j'ai une table STOCK de TRUCS, avec une colonne ID.
Je les loue, Alors j'ai une autre Table COMMAND ds laquelle sont écrits les IDs des Trucs quand on les Reserve ainsi que les DATES RESERV.
Le but est de savoir si le TRUC concerné ne sera pas en commande, à la date DATEX.
Alors je veux construire une requete pour avoir
(la liste de TRUCS qui ne sont pas du tout en commandes
OU
qui sont en commandes mais pas a ces dates
)
(
ET
(le reste de ma requete)
)

à Propos y' une limite de taille à des requetes sql ?
On peut envoyer 500 lignes de requete ? et ca marche ?
merci de repondre aussi vite c cool, mowgli !

David
MzaDvid
moogli
le 13/06/2004 à 23:48
moogli
Exact me suis gourer dsl c'est bien table.champ

ensuite tu peut faire autant de requete que tu veus m'enfin l'affichage de ta page va s'en ressentir smiley.
donc si j'ai bien compris tu veut la liste des trucs qui sont pa en commande ou pas a la date ($date)
=> select truc from stock,command where stock.id!= command.id or reserv=!$date;
pour le reste de la requete si c'est reste du stok ben fo faire l'inverse .....

juste une idée comme cela, se serait plus simple si tu mettais un champ cmd dans la table stok (=1 si en cmd =0 sinon)
comme cela pour avoir la liste des truc en command (quelque soit la date
=>Select truc,datereserv from stock,command WHERE cmd=1 and stock.id=command.id;
pis pour la liste des truck pa en cmd
select truc from stock where cmd=0;

pour les en cmd mais pa la date $date

select truc, datereserv from stock,command where cmd=1 and date_reserve!=$date and stock.id=command.id;

Voila sauf erreur de ma part (et c'est pa dis smiley) cela doit marcher smiley
Il en faut peu pour être heureux !!!!!
MzDavid
le 14/06/2004 à 00:04
MzDavid
=> select truc from stock,command where stock.id!= command.id or reserv=!$date;
pour le reste de la requete si c'est reste du stok ben fo faire l'inverse .....


Je l'avais pensé com ça, meuh non... Apparemment il faut utiliser JOIN (LEFT ou RIGHT, fo relire), car avec juste FROM tabl1, tabl2, il faut que les TRUCSID soient ds les 2 tables...

La deuxieme soluce marcherait, oui , j'y avais pas vu, je la garde, mais je vais qd meme etudier JOIN, et aussi on peut mettre des IF et des CASES ds les SELECT, oula, je vais relire....

Merci, bcp, tres sympa !

David
MzaDvid
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours