SommaAlgebrica tabella Movimenti è un modo italiano ( non SQL ) per dirti diOriginariamente inviato da mefisto_ax
.... come faccio a creare un nuovo campo partendo da una query ?
Nel senso, tu mi dici di considerare DataDiInizio ....., ma il risultato dove lo metto ?
......
Non ho capito che significa + SommaAlgebrica tabella Movimenti
calcolare la:
-- Somma del Prezzo degli Articoli (accuistati/venduti) x la Quantita
__________________________________________________ ______________________
In effetti la domanda di Optime è importante,
se il 2.35 non e uguale per tutte le persone
( oppure se potrebbe cambiare nel tempo per la stessa persona )
allora va considerato subito
__________________________________________________ ______________________
Comunque per rispondere alle domande,
se tu hai queste 3 tabelle ( Che ho semplificato )
----- tabella PERSONE
idP (contatore, KeyPrimaria)
Nome (testo)
DaIn (DataOra) La data di iscrizione/Inizio della Persona
----- tabella ARTICOLI
idA (contatore, KeyPrimaria)
Arti (testo)
Prez (valuta)
------ tabella MOVIMENTI
idM (contatore, KeyPrimaria)
Quan (numerico)
Casu (NotNull, Valori ammessi solamente "a" oppure "v" ( accuisto / Vendita))
idAM (numerico, chiave esterna della tabella ARTICOLI.idA)
idPM (numerico, chiave esterna della tabella PERSONE.idm)
Con questa Vista riesci a calcolarti il CreditoResiduo di ogni persona
Ti ho volutamente lasciato tutti i campi per renderla piu comprensibile
codice:SELECT PERSO.idP, PERSO.Nome, ((Date()-[PERSO].[DaIn])*2.35) AS CreRes1, Sum(IIf([MOVIM].[Casu]="v",[MOVIM].[Quan]*[ARTIC].[Prez],0)+IIf([MOVIM].[Casu]="a",[MOVIM].[Quan]*[ARTIC].[Prez]*-1,0)) AS CreRes2, [CreRes1]+[CreRes2] AS CreResTot FROM PERSO LEFT JOIN ( ARTIC RIGHT JOIN MOVIM ON ARTIC.idA = MOVIM.idAM ) ON PERSO.idP = MOVIM.idPM GROUP BY PERSO.idP, PERSO.Nome, ((Date()-[PERSO].[DaIn])*2.35) ;
Facci Sapere
.

Rispondi quotando