Takimi trzema zapytaniami pobieram 3 pierwsze miejsca 3 list przebojów

  1. SELECT l1.id_listy,l1.pozycja,p.tytul,w.wykonawca FROM lista1 l1 LEFT JOIN piosenki p ON l1.id_piosenki=p.id LEFT JOIN wykonawcy w ON p.id_wykonawcy=w.id ORDER BY l1.pozycja LIMIT 0,3
  2. SELECT l2.id_listy,l2.pozycja,p.tytul,w.wykonawca FROM lista2 l2 LEFT JOIN piosenki p ON l2.id_piosenki=p.id LEFT JOIN wykonawcy w ON p.id_wykonawcy=w.id ORDER BY l2.pozycja LIMIT 0,3
  3. SELECT l3.id_listy,l3.pozycja,p.tytul,w.wykonawca FROM lista3 l3 LEFT JOIN piosenki p ON l3.id_piosenki=p.id LEFT JOIN wykonawcy w ON p.id_wykonawcy=w.id ORDER BY l3.pozycja LIMIT 0,3


tabele lista1, lista2, i lista3 mają identyczną strukturę tzn pola typu int id,id_listy,id_piosenki,pozycja, czy da rade pobrać powyższe dane bardziej optymalnie żeby potem wyświetlić je tak jak poniżej?
  1. Lista 1
  2. pozycja 1
  3. pozycja 2
  4. pozycja 3
  5. Lista 2
  6. pozycja 1
  7. pozycja 2
  8. pozycja 3
  9. Lista 3
  10. pozycja 1
  11. pozycja 2
  12. pozycja 3