Unione di 2 tabelle

di il
2 risposte

Unione di 2 tabelle

Ciao a tutti, sono un principiante in cerca di aiuti:
da un programma in vb che mi è stato gentilmente regalato, stò cercando di fare delle personalizzazioni.
ho una tabella A (categoriemagazzino) con la colonna ID e Descrizione,
una tabella B (ClientiListini) con IDUtente, Categoria e Valore
vorrei creare una query che mi restituisca tutta la tabella A e aggiungere la colonna Valore della tabella B che contiene il dato se A.descrizione=B.Categoria e B.IDcliente=(parametro)
ho provato la seguente query ma mi restituishe molte righe duplicate
SELECT * FROM dbo.categoriemagazzino left JOIN dbo.ClientiListini
on dbo.ClientiListini.categoria = dbo.categoriemagazzino.descrizione and dbo.ClientiListini.IDcliente =145
order by ID

grazie.

2 Risposte

  • Re: Unione di 2 tabelle

    Ciao..!
    intanto...che db usi?!
  • Re: Unione di 2 tabelle

    giuseppe@elfipa.it ha scritto:


    ciao a tutti, sono un principiante in cerca di aiuti:
    da un programma in vb che mi è stato gentilmente regalato, stò cercando di fare delle personalizzazioni.
    ho una tabella A (categoriemagazzino) con la colonna ID e Descrizione,
    una tabella B (ClientiListini) con IDUtente, Categoria e Valore
    vorrei creare una query che mi restituisca tutta la tabella A e aggiungere la colonna Valore della tabella B che contiene il dato se A.descrizione=B.Categoria e B.IDcliente=(parametro)
    ho provato la seguente query ma mi restituishe molte righe duplicate
    SELECT * FROM dbo.categoriemagazzino left JOIN dbo.ClientiListini
    on dbo.ClientiListini.categoria = dbo.categoriemagazzino.descrizione and dbo.ClientiListini.IDcliente =145
    order by ID

    grazie.
    Quindi l'IDCliente, essendo una condizione di filtro, non va messo in AND come hai fatto tu, ma devi indicarlo in una WHERE, così:
    
    SELECT     * FROM  dbo.categoriemagazzino  left JOIN dbo.ClientiListini
                           on dbo.ClientiListini.categoria = dbo.categoriemagazzino.descrizione
    WHERE dbo.ClientiListini.IDcliente =145
Devi accedere o registrarti per scrivere nel forum
2 risposte