Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329

    MySQL - Come ottenere il numero di id distinti in una tabella joinata ad un altra?

    Ho due tabelle A e B ognuna con degli ID ida e idb, quando faccio un LEFT JOIN fra le due, vorrei che uscisse fuori anche il numero di occorrenze dei vari idb che compariranno nella select, come fare?

    A:
    a: 1, 2, 3, 4, 5
    b: 12, 13, 14

    B:
    id: 12, 12, 12, 12, 13, 13 , 14

    Nel LEFT JOIN A-B HO
    a:1, 1, 1, 1, 2, 2, 3, 4, 5
    id:12, 12, 12, 12, 13, 13, 14, NULL, NULL

    Io vorrei avere una select in uscita con i soli valori distinti, ed una colonna che indichi il numero di occorrenze per ogni ID della tabella B.

    Risultato ambito:
    a: 1, 2, 3, 4, 5
    id: 12, 13, 14, NULL, NULL
    count: 4, 2, 1, 0, 0

    Spero si essermi espresso bene.
    Grazie.
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  2. #2
    basta usare la GROUP BY, che fa implicitamente la DISTINCT

    esempio

    SELECT a.id, count(a.id) FROM a LEFT JOIN b ON a.id=b.id GROUP BY a.id

    sistemala secondo le tue esigenze

  3. #3
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Funziona, ma io ci avevo provato -.-'', probabilmente avrò sbagliato qualcosa.
    Altra cosa che non so come poter fare, e capire se un ID della tabella B è presente nella tabella A, mentre sto facendo la JOIN, si può fare? Ed in tal caso come?
    Grazie.
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  4. #4
    spiegati meglio: che vuol dire "mentre sto facendo la JOIN"?

  5. #5
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Nulla, risolto, grazie mille per prima
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  6. #6

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