Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di MM88
    Registrato dal
    Jun 2003
    Messaggi
    567

    Problema query con JOIN

    Ciao, ho due tabelle ( products e products_description ) che hanno in comune solo il campo products_id


    Dalla tab products_description vorrei estrarre i campi:

    - products_id
    - products_name
    - products_description


    Dalla tab products vorrei estrarre i campi:

    - products_image
    - products_price
    - products_date_available
    - products_status



    Ho eseguito questa query:

    codice:
    SELECT a1.products_id, a1.products_name, a1.products_description, a2.products_image, a2.products_price, a2.products_date_available, a2.products_status
    		FROM products_description AS a1
    		LEFT JOIN products_image, products_price, products_date_available, products_status AS a2 ON a1.products_id = a2.products_id
    		WHERE products_status = 1
    		GROUP by products_name
    		ORDER BY products_name ASC

    e non mi restituisce nulla, né mi segnala errori.


    Come va corretta?


    grazie.

  2. #2
    non puoi infilare in left join tutte le tabelle. Devi dichiararle ognuna con il LEFT JOIN

    ed ovviamente dichiarare con ON quale' la relazione da prendere in considerazione

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Originariamente inviato da piero.mac
    non puoi infilare in left join tutte le tabelle. Devi dichiararle ognuna con il LEFT JOIN

    ed ovviamente dichiarare con ON quale' la relazione da prendere in considerazione
    aspetta.... ma ho capito 'na mazza.... se quelli sono campi non vanno messi nel left join ma dichirati nel select/where.... in left join ci vanno le tabelle.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  4. #4
    Utente di HTML.it L'avatar di MM88
    Registrato dal
    Jun 2003
    Messaggi
    567
    Ti ringrazio per la risposta.

    Puoi gentilmente farmi un esempio sulla base della mia query, perché non saprei applicare quello che mi scrivi.


    grazie

  5. #5
    Originariamente inviato da MM88
    Ti ringrazio per la risposta.

    Puoi gentilmente farmi un esempio sulla base della mia query, perché non saprei applicare quello che mi scrivi.


    grazie
    qualcosa del genere:
    codice:
    SELECT a1.products_id, a1.products_name, 
        a1.products_description, a2.products_image, 
        a2.products_price, a2.products_date_available, 
        a2.products_status
    		FROM products_description AS a1
                    LEFT JOIN products_status AS a2 ON a1.products_id = a2.products_id
    		WHERE a2.products_status = 1
    		GROUP by a1.products_name
    		ORDER BY a1.products_name ASC

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  6. #6
    Utente di HTML.it L'avatar di MM88
    Registrato dal
    Jun 2003
    Messaggi
    567
    Come mi hai scritto continua ad essere tutto vuoto.


    Se sostituisco

    LEFT JOIN products AS a2 ON a1.products_id = a2.products_id


    Invece produce dei risultati, ma non penso che sia corretta la sintassi perché mancano i dati della tabella "products"



    grazie

  7. #7
    Utente di HTML.it L'avatar di MM88
    Registrato dal
    Jun 2003
    Messaggi
    567
    Anche impostando la query così:


    codice:
    SELECT products_description.products_id, products_description.products_name, products_description.products_description, products.products_image, products.products_price, products.products_date_available, products.products_status FROM products_description JOIN products ON products_description.products_id = products.products_id
    		WHERE products.products_status = 1
    		GROUP by products_description.products_name
    		ORDER BY products_description.products_name ASC

    mancano sempre i dati della seconda tabella ( "products" )


    per quale motivo?


    grazie

  8. #8
    vai un po' a capo con la query altrimenti e' illeggibile.

    dichiara se JOIN e' INNER o LEFT. Poi togli il raggruppamento e la condizione where.

    Vedi se funziona senza le limitazioni, poi rimetti man mano le condizioni e vedi dove ti spariscono i dati.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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 © 2026 vBulletin Solutions, Inc. All rights reserved.