Accueil > Forum > > > > requete commandes/receptions
requete commandes/receptions
lundi 10 décembre 2007 à 15:15:42 |
requete commandes/receptions

DMK04
|
Bonjour, J'ai un problème (comme vous vous en doutez) avec une requête : J'ai 3 tables : CREATE TABLE "COMPTA" ( "CC" NUMBER NOT NULL ENABLE, CONSTRAINT "COMPTA_PK" PRIMARY KEY ("CC") ENABLE ) /
CREATE OR REPLACE TRIGGER "BI_COMPTA" before insert on "COMPTA" for each row begin select "COMPTA_SEQ".nextval into :NEW.CC from dual; end;
/ ALTER TRIGGER "BI_COMPTA" ENABLE /
INSERT INTO "COMPTA" VALUES (101); INSERT INTO "COMPTA" VALUES (102); INSERT INTO "COMPTA" VALUES (103); INSERT INTO "COMPTA" VALUES (201); INSERT INTO "COMPTA" VALUES (202); INSERT INTO "COMPTA" VALUES (203);
CREATE TABLE "CMDES" ( "ID" NUMBER NOT NULL ENABLE, "CME" VARCHAR2(4000) NOT NULL ENABLE, "MNT" NUMBER NOT NULL ENABLE, "CC" NUMBER NOT NULL ENABLE, CONSTRAINT "CMDES_PK" PRIMARY KEY ("ID") ENABLE, CONSTRAINT "CMDES_FK" FOREIGN KEY ("CC") REFERENCES "COMPTA" ("CC") ENABLE ) /
CREATE OR REPLACE TRIGGER "BI_CMDES" before insert on "CMDES" for each row begin select "CMDES_SEQ".nextval into :NEW.ID from dual; end;
/ ALTER TRIGGER "BI_CMDES" ENABLE /
INSERT INTO "CMDES" VALUES (1,'CME1',30,102); INSERT INTO "CMDES" VALUES (2,'CME1',40,102); INSERT INTO "CMDES" VALUES (3,'CME1',200,103); INSERT INTO "CMDES" VALUES (4,'CME1',300,103); INSERT INTO "CMDES" VALUES (5,'CME1',400,103); INSERT INTO "CMDES" VALUES (6,'CME2',10,201); INSERT INTO "CMDES" VALUES (7,'CME2',20,101);
CREATE TABLE "RECEP" ( "ID" NUMBER NOT NULL ENABLE, "CME" VARCHAR2(4000) NOT NULL ENABLE, "MNT" NUMBER NOT NULL ENABLE, "CC" NUMBER NOT NULL ENABLE, CONSTRAINT "RECEP_PK" PRIMARY KEY ("ID") ENABLE, CONSTRAINT "RECEP_FK" FOREIGN KEY ("CC") REFERENCES "COMPTA" ("CC") ENABLE ) /
CREATE OR REPLACE TRIGGER "BI_RECEP" before insert on "RECEP" for each row begin select "RECEP_SEQ".nextval into :NEW.ID from dual; end;
/ ALTER TRIGGER "BI_RECEP" ENABLE /
INSERT INTO "RECEP" VALUES (1,'CME1',10,101); INSERT INTO "RECEP" VALUES (2,'CME1',20,101); INSERT INTO "RECEP" VALUES (3,'CME1',50,102); INSERT INTO "RECEP" VALUES (4,'CME1',700,202); INSERT INTO "RECEP" VALUES (5,'CME2',40,201); INSERT INTO "RECEP" VALUES (6,'CME2',50,202);Ces 2 requêtes marchent bien : SELECT COMPTA.cc, SUM(CMDES.mnt) as "cmdes" FROM COMPTA, CMDES WHERE CMDES.cme = 'CME1' AND CMDES.cc = COMPTA.cc GROUP BY COMPTA.cc ORDER BY COMPTA.cc;
SELECT COMPTA.cc, SUM(RECEP.mnt) as "recep" FROM COMPTA, RECEP WHERE RECEP.cme = 'CME1' AND RECEP.cc = COMPTA.cc GROUP BY COMPTA.cc ORDER BY COMPTA.cc;Ce que je voudrais faire, c'est une "fusion" de ces deux résultats, quelque chose qui donnerait un truc du genre (pour cme = 'CME1') : cc cmdes recep 101 - 30 102 70 50 103 900 - 202 - 700J'ai essayé la requête : SELECT COMPTA.cc, SUM(CMDES.mnt) as "cmdes", SUM(RECEP.mnt) as "recep" FROM COMPTA, CMDES, RECEP WHERE (CMDES.cme = 'CME1' AND CMDES.cc = COMPTA.cc) OR (RECEP.cme = 'CME1' AND RECEP.cc = COMPTA.cc) GROUP BY COMPTA.cc ORDER BY COMPTA.cc;
Mais ce n'ai pas ce que veux. Quelqu'un peut-il m'aider ? Merci d'avance.
|
|
lundi 10 décembre 2007 à 15:42:17 |
Re : requete commandes/receptions

pneau
|
salut, essaies cela SELECT COMPTA.cc, SUM(CMDES.mnt) as "cmdes", SUM(RECEP.mnt) as "recep" FROM COMPTA, CMDES, RECEP WHERE CMDES.cme = 'CME1' AND CMDES.cc = COMPTA.cc and RECEP.cme = 'CME1' AND RECEP.cc = COMPTA.cc And CMDES.cc = RECEP.cc GROUP BY COMPTA.cc ORDER BY COMPTA.cc;
dis moi le result et on verra ensuite.. @+
Pat Don't Worry , Be Happy 
lorsque le problème est résolu, pensez Réponse Acceptée 
|
|
lundi 10 décembre 2007 à 16:17:42 |
Re : requete commandes/receptions

DMK04
|
cc cmdes recep 102 70 100
Je me rapproche du resultat voulu avec : SELECT COMPTA.cc, SUM(CMDES.mnt) as "cmdes", SUM(RECEP.mnt) as "recep" FROM COMPTA FULL OUTER JOIN CMDES ON CMDES.cc = COMPTA.cc AND CMDES.cme = 'CME1' FULL OUTER JOIN RECEP ON RECEP.cc = COMPTA.cc AND RECEP.cme = 'CME1' WHERE COMPTA.cc IS NOT NULL GROUP BY COMPTA.cc ORDER BY COMPTA.cc;
mais j'ai : cc cmdes recep 101 - 30 102 70 100 103 900 - 202 - 700
en regardant le détail, pour cc=102 j'ai : 102 30 50 102 40 50
J'ai une ligne avec cc=102 dans CMDES et 2 lignes avec cc=102 dans RECEP donc il double. Peut-on annuler cet effet ?
Voilà où j'en suis pour le moment.
|
|
lundi 10 décembre 2007 à 16:48:56 |
Re : requete commandes/receptions

pneau
|
salut (re) as tu essayer avec l'opérateur "UNION" en utilisant tes 2 requetes de base ex : SELECT COMPTA.cc, SUM(CMDES.mnt) as "cmdes", 0 as "recep" FROM COMPTA, CMDES WHERE CMDES.cme = 'CME1' AND CMDES.cc = COMPTA.cc GROUP BY COMPTA.cc ORDER BY COMPTA.cc; UNION SELECT COMPTA.cc, 0 as "cmdes", SUM(RECEP.mnt) as "recep" FROM COMPTA, RECEP WHERE RECEP.cme = 'CME1' AND RECEP.cc = COMPTA.cc GROUP BY COMPTA.cc ORDER BY COMPTA.cc;Attention, je n'ai pas fait de PL/SQL depuis un moment donc si il y a une err de syntaxe, vérifie les paramètres du UNION cordialement Pat Don't Worry , Be Happy 
lorsque le problème est résolu, pensez Réponse Acceptée 
|
|
lundi 10 décembre 2007 à 17:03:08 |
Re : requete commandes/receptions

DMK04
|
UNION met bout à bout les 2 résultats. Avec la syntax correcte, j'aurai mes commandes et receptions dans la même colonne...
La solution que j'ai trouvé pour le moment, c'est de créer 2 vues : CREATE VIEW cmdesCME1 AS SELECT COMPTA.cc as "cc", SUM(CMDES.mnt) as "cmdes" FROM COMPTA, CMDES WHERE CMDES.cme = 'CME1' AND CMDES.cc = COMPTA.cc GROUP BY COMPTA.cc ORDER BY COMPTA.cc;
CREATE VIEW recepCME1 AS SELECT COMPTA.cc as "cc", SUM(RECEP.mnt) as "recep" FROM COMPTA, RECEP WHERE RECEP.cme = 'CME1' AND RECEP.cc = COMPTA.cc GROUP BY COMPTA.cc ORDER BY COMPTA.cc;
Et apres de faire une jointure des deux vues : SELECT COMPTA.cc as "cc", cmdesCME1."cmdes" as "cmdes", recepCME1."recep" as "recep" FROM COMPTA FULL OUTER JOIN cmdesCME1 ON cmdesCME1."cc" = COMPTA.cc FULL OUTER JOIN recepCME1 ON recepCME1."cc" = COMPTA.cc WHERE COMPTA.cc IS NOT NULL AND (cmdesCME1."cmdes" IS NOT NULL OR recepCME1."recep" IS NOT NULL) ORDER BY COMPTA.cc;
|
|
Cette discussion est classée dans : insert, into, cc, compta, cmdes
Répondre à ce message
Sujets en rapport avec ce message
Pb Insert into !!!! Urgent ... [ par tousimages ]
Voila je n'arrive pas a soumettre cette requete a accessil y a 21 champsid --> numeroAutocivilite, nom , prenom , societe, adr1, adr2 --> textecodepos
requête Insert Into [ par richch ]
Salut,Est ce que je peux utiliser cette requête, si non quelle est l'erreur?SQL="insert into Article (code_Famille, lib_Pr, def_Pr, princ_Vertus, gluc
Requete sur un AGREGAT [ par cyberice67 ]
Bonjour, Voilà j'ai un big problème sur une requete SQL. J'ai une base de donnée SQL Server est j'essaie de créer une requete portant sur un agregat.
access : insert into champ boolean [ par trexor ]
Bonjour,j'ai un champ access boolean (true/false) que je dois remplir avec vb.net, mais j'ai une erreur insert into Voici ma requte :Dim req1 = "INSE
Erreur de syntaxe INSERT INTO [ par themioux ]
SalutJ'ai une erreur de syntaxe dans la requette suivante, et je n'arrive pas à comprendre pourquoiINSERT INTO arcVersement (service, agentID, dateVer
INSERT INTO une seule valeur [ par bigondas ]
j'ai un formulaire access fait à partir d'une table seule, le but de ma requête est que lorsque l'on clique sur un bouton, la macro appelée déclenche
Utilisation des variables memoire dans la commande SQL INSERT INTO [ par Omer Pitou ]
BONJOUR A TOUS ET MERCI D'AVANCE POUR VOTRE ASSISTANCE. Mon probleme est celui-ci : j'ai deux variables X,Y predefinies et dont les valeurs changent s
Faire une boucle de INSERT INTO [ par IdrilElendil ]
Bonjour, j'essaie de faire une boucle pour insérer plusieurs lignes de suite dans une table d'Access via une procédure en VBA. For Indice = 1 To 3
Probleme d'integrité dans une stored avec transaction [ par issoux ]
Conflit entre l'instruction INSERT et la contrainte COLUMN FOREIGN KEYVoilà mon erreur : j'ai une transaction que voici (sous sql server 2000) :CREATE
violation de contraintes unique [ par dark_cross ]
CREATE TABLE appareil( num_vol number(4) PRIMARY KEY, num_avion NUMBER(4), nbvolh_mois NUMBER(4), nbhvol_tot NUMBER(6), capacite N
Livres en rapport
|
Derniers Blogs
SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko
Forum
BESOIN D'UN BIBESOIN D'UN BI par michimichid
Cliquez pour lire la suite par michimichid
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|