Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Join (?left?)

  1. #1

    Join (?left?)

    Ho 2 tabelle.

    players
    | id | name | points | ecc.
    | 1 | play1 | 100000 | ....
    | 2 | play2 | 200000 | ....

    matches
    | id | day | home_id | out_id | result_home | result_out | date_played |
    | 1 | 1 | 1 | 2 | 5 | 2 | "data" |
    | 2 | 1 | 2 | 1 | 3 | 1 | "data" |
    | 3 | 2 | 1 | 2 | 2 | 2 | "data" |

    In pratica dovrei estrarre per ogni player ("players") gli ultimi due risultati della tabella "matches" in ordine di "date_played" dcrescente (DESC).
    Qualcosa tipo:
    SELEZIONA *tutto* DA players E SELEZIONA GLI ULTIMI DUE RISULTATI IN ORDINE DI DATA DECRESCENTE DOVE O IN home_id O IN out_id CI DEVE ESSERE L'ID DEL GIOCATORE
    oppure:
    SELECT player.* FROM players player LEFT JOIN matches ON ( player.id=matches.home_id OR player.id=matches.out_id ) LIMIT ...
    E quando scrivo: "echo $result['result_home'];" mi deve restituire il risultato...

    Attenzione: il LIMIT a due risultati deve essere posto solo alla tabella "matches".

  2. #2

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.