[PHP] Inner join su 4 tabelle

solari77

Utente Attivo
6 Ott 2016
119
1
18
Ciao a tutti, ho bisogno del vostro aiuto per risolvere un problema.

Ho 4 tabelle cosi costituite:
anagrafica -> id - nome
pagamenti-> id - id_prenotazione - data - importo
prenotazioni-> id - id_stanza - id_cliente - datain - dataout - costo
stanze-> id - nome

Ora io dovrei realizzare una tabella che tramite una query mi restituisca per ogni prenotazione i seguenti valori:
anagrafica.nome - stanze.nome - prenotazioni.datain - prenotazioni.dataout - prenotazioni.costo - pagamenti.importo

Vi ringrazio anticipatamente a tutti
 

solari77

Utente Attivo
6 Ott 2016
119
1
18
Ciao e grazie per la risposta.
Sicuramente mi sono espresso male.
Con tabella intendevo quello che realizzo poi tramite HTML e dove metto tutti i risultati.
Io devo ottenere a video l'elenco ti tutte le prenotazioni con i relativi campi indicati nel precedente post.
Si deve essere vista come un'unica tabella che racchiude tutti i campi delle 4 tabelle.
poi a video dovrò visualizzare tutto e questo dovrà essere ordinabile o anagrafica.nome -o stanze.nome o prenotazioni.dataout o prenotazioni.costo.
Spero di aver spiegato bene il problema e chiedo scusa se ho fatto confusione
 
Ultima modifica:

marino51

Utente Attivo
28 Feb 2013
3.039
192
63
Lombardia
deve essere vista come un'unica tabella
capisco che vuoi ottenere il risultato con un'unica query,
vedi se è ciò che ti serve,
Codice:
select
  anagrafica.nome as nomecliente
 ,stanze.nome as nomestanza
 ,prenotazioni.datain
 ,prenotazioni.dataout
 ,prenotazioni.costo
 ,pagamenti.importo
from prenotazioni
left join anagrafica on prenotazioni.id_cliente = anagrafica.id
left join stanze on prenotazioni.id_stanza = stanze.id
left join pagamenti on prenotazioni.id = pagamenti.id_prenotazione
credo che dovrai inserire una o più clausole "where" per limitare la selezione delle prenotazioni estratte
usando "left join" vengono estratte tutte le prenotazioni, anche quelle che non hanno pagamenti in essere ( dovrebbe essere interessante elencarle)
 
  • Like
Reactions: solari77

solari77

Utente Attivo
6 Ott 2016
119
1
18
Si è perfettamente quello che cercavo.
Va benissimo cosi la query perchè devo visualizzare anche le prenotazioni che non hanno pagamenti.
Sei stato gentilissimo
 

solari77

Utente Attivo
6 Ott 2016
119
1
18
scusami ancora, ho appena notato una cosa.
Chiaramente non potevi saperlo perchè non l'ho specificato.
Il pagamento può avvenire in 2 tranche, in questo modo la view mi restituisce 2 righe (una per ogni pagamento).
E' possibile raggruppare i pagamenti (e quindi la relativa riga) relativi alla stessa prenotazione ?
 

marino51

Utente Attivo
28 Feb 2013
3.039
192
63
Lombardia
Chiaramente non potevi saperlo perchè non l'ho specificato.
Il pagamento può avvenire in 2 tranche, in questo modo la view mi restituisce 2 righe (una per ogni pagamento).
In realtà volevo scriverlo come nota .. ma ho lasciato perdere
prova così,
Codice:
select
  anagrafica.nome as nomecliente
 ,stanze.nome as nomestanza
 ,prenotazioni.datain
 ,prenotazioni.dataout
 ,prenotazioni.costo
 ,sum(pagamenti.importo) as importo
from prenotazioni
left join anagrafica on prenotazioni.id_cliente = anagrafica.id
left join stanze on prenotazioni.id_stanza = stanze.id
left join pagamenti on prenotazioni.id = pagamenti.id_prenotazione
group by
  anagrafica.nome
 ,stanze.nome
 ,prenotazioni.datain
 ,prenotazioni.dataout
 ,prenotazioni.costo
 
  • Like
Reactions: solari77
Discussioni simili
Autore Titolo Forum Risposte Data
M [PHP] Aiuto su inner join PHP 10
S Stampare il risultato di una query inner jon in php.... PHP 4
M Visulizzare immagine con php PHP 8
G [PHP] Creare script di prenotazione con controllo disponibilità. PHP 7
G leggere file txt e stampare con php il contenuto a video PHP 7
F Ricreare struttura php+mysql su Xampp Apache 0
Z PHP.INI - STMP per invio email con PHP Server Dedicati e VPS 0
M Array associativi php su 2 campi mysql PHP 10
G Invio form con PHP PHP 3
T fatture con voci fattura in php PHP 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
M Collegamento tra form html e script php PHP 4
M Problemi con la stampa dei valori in php PHP 1
W [Cerco collaborazioni] Sviluppatore Web (PHP) Offerte e Richieste di Lavoro e/o Collaborazione 1
D passare valori da database sql a php PHP 1
L Ricezione dei dati su file php da modulo html PHP 6
E Inviare variabile a PHP da ciclo in JS Javascript 0
A form PHP prenotazione tramite query PHP 2
A Form php prenotazione di un azienda sanitaria locale presso studio medico PHP 1
F menù select dinamico da db in php PHP 3
L Problemi form Pagina php HTML e CSS 3
L php mysql non salva solo id PHP 21
L php mysql cerca e visualizza pagina PHP 0
F Il codice php è giusto? PHP 2
R Aggiornare record mysql con Ajax, jQuery e php Ajax 2
A invio massivo dati a file php Javascript 4
Z MySql injection PHP PHP 1
V PHP form intersecate PHP 0
I [Offro][Retribuito] Programmatore Php Offerte e Richieste di Lavoro e/o Collaborazione 0
P Funzione jQuery Ajax invio file a php jQuery 1
C Dopo chiusura del tag php la stringa html va a capo PHP 1
E Transaction php PHP 11
B ciclare file xml con PHP PHP 1
L Estrazione dati php Database 6
A Aiuto per pagina php PHP 0
E Php select option e ajax PHP 23
I Aiuto php Dependent Lookup PHP 0
T arretramento versione PHP... PHP 3
D problema php mysql PHP 1
D problema php mysql PHP 1
E Barra di avanzamento codice PHP PHP 4
G creazione menu a tendina e invio a pagina php PHP 1
A inserire variabile php colore in div html PHP 2
Z Video protetto con PHP PHP 0
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
I Eecuzione di javascript in ciclo foreach php. PHP 7
S Libreria PHP per creare file dwg o dxf PHP 0
A [cerco - retribuito] Sviluppatore Php freelance per progetti vari Offerte e Richieste di Lavoro e/o Collaborazione 2
L Google chart php mysql PHP 2
R Download file multipli da directory php PHP 0

Discussioni simili