Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [MYSQL] Un query che non riesco a fare

    Ciao a tutti

    io ho queste tre tabelle
    codice:
    Prodotti           Magazzino	       Venduti
    +------------+	   +------------+      +------------+
    |PRD_ID	     |	   |PRD_ID	|      |PRD_ID	    |
    +------------+	   +------------+      +------------+
    |PRD_Prodotto|	   |NEG_ID	|      |NEG_ID	    |
    +------------+	   +------------+      +------------+
    		   |PRD_QtaStock|      |PRD_QtaSell |
    		   +------------+      +------------+
    Ora mi occorrerebbe una vista unica in cui visualizzare tutti i prodotti presenti nella tabella ma per ognuno, se presente, la quantità di prodotti presenti in Magazzino e la quantità di prodotti Venduti filtrandoli per il Negozio di riferimento.

    Allora ho creato una vista mettendo in JOIN le tre tabelle in questo modo:
    codice:
    SELECT
    	prodotti.PRD_ID,
    	magazzino.NEG_ID as NEG_ID_Mag,
    	venduti.NEG_ID as NEG_ID_Ven,
    	IFNULL(prodotti.PRD_Prodotto, 0) as PRD_Prodotto,
    	IFNULL(magazzino.PRD_QtaStock, 0) as PRD_QtaStock,
    	IFNULL(venduti.PRD_QtaSell, 0) as PRD_QtaSell
    FROM
    	(prodotti left join magazzino on (prodotti.PRD_ID = magazzino.PRD_ID))
    	left join venduti on (prodotti.PRD_ID = venduti.PRD_ID)
    E poi la richiamo così:
    codice:
    SELECT 
    	* 
    FROM 
    	vw_vista 
    WHERE
    	(NEG_ID_Mag is Null AND NEG_ID_Ven is Null) OR
    	(NEG_ID_Mag = 1 AND NEG_ID_Ven is Null ) OR
    	(NEG_ID_Mag is Null AND NEG_ID_Ven = 1) OR 
    	(NEG_ID_Mag = 1 AND NEG_ID_Ven = 1)
    Aspettandomi di trovare in elenco "tutti i prodotti" e per ognuno, se presente, la sua quantità in magazzino e/o la quantità venduta... beh ovviamente non succede, ottengo questi errori:
    1. i prodotti elencati non sono tutti
    2. le vendite sono sempre a 0

    Dove sbaglio? credo nella vista... o nel richiamarla?

    Grazie
    ALEX
    Più PILU per tutti!!

  2. #2
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Non è ben chiaro il rapporto tra i campi negozio delle tabelle magazzino e venduti

  3. #3
    In pratica le tabelle "Magazzino" e "Venduti" sono due tabelle (in realtà sul mio db delle viste) in cui registro:
    Magazzino : il "saldo" (acquisti - vendite) del magazzino per quel prodotto per un determinato negozio
    Venduti : le sole vendite di un determinato prodotto in un determinato negozio (qui in realtà da me è una vista in cui faccio la media del venduto di un prodotto dato un determinato periodo di tempo)

    Così va meglio?
    Più PILU per tutti!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2020 vBulletin Solutions, Inc. All rights reserved.