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

    [MYSQL] ordinamento su altra tabella

    Ciao

    Ho questo problema

    Ho una tabella tbl1
    Nome [Mario]
    Id (non chiave primaria) [123]

    Una seconda tabella tbl2

    Id [123, chiave primaria, uguale a quello sopra]
    Importo [500.00]

    Io vorrei effettuare una query sulla prima tabella [SELECT nome FROM tbl1] ordinandola in base all'importo della tbl2 [ORDER BY Importo]

    Come diavolo faccio?

    Ho certe lacune non da poco in Mysql, vero?

    Ciao e grazie,

    Edoardo

  2. #2
    codice:
    SELECT a.nome
    FROM tab1 a
    left join tab2 b
    on b.id = a.id
    order by b.importo


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

  3. #3
    Grazie, domani mattina lo provo

    Ciao e a presto,

    Edoardo

  4. #4
    Ciao Piero

    Ho utilizzato il tuo script e ti ringrazio

    Il sistema però non tiene conto che "b.importo" può essere in negativo

    Se b.importo è positivo tutto ok, se è in negativo non lo considera nell'output della query

    Aggiungo una domanda da un milione di dollari, se un record nella tabella tbl1 non ha il suo relativo record nella tabella tbl2, c'è un modo per assumere che il valore b.importo sia uguale a 0.00?

    Ciao e grazie,

    Edoardo

  5. #5
    b.importo serve solo per l'ordinamento, non mi pare che tu lo estragga.

    per i record mancanti... prova
    codice:
    SELECT a.nome, '0.00' as importo_nullo
    FROM tab1 a
    left join tab2 b
    on b.id = a.id
    where a.id is null
    order by a.name

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