Salve a tutti,
ho 2 tabelle in relazione tra loro tramite ID
codice:
CLIENTI
----------------------------
ID_Cliente Nome
1 Pino
2 Lino
3 Rino
Orari
----------------------------------------------------------------
ID_Cliente Tipo Ora
1 ENTRATA 2006-09-06 08:00:00
1 USCITA 2006-09-06 12:00:00
Vorrei eseguire una query che mi restituisse un solo record con i campi ENTRATA e USCITA con gli orari.
mi spiego meglio
Se eseguo questa query
codice:
SELECT C.ID_Cliente, C.Nome, O.Ora
FROM Clienti C INNER JOIN Orari O ON C.ID_Cliente = O.ID_Cliente
WHERE ID_Cliente = 1 AND O.Tipo = 'ENTRATA'
mi restituirebbe il seguente record
codice:
ID_Cliente Nome Ora
1 Pino 2006-09-06 08:00:00
Se tolgo la clausola
codice:
AND O.Tipo = 'ENTRATA'
mi ritorna 2 record.
Se tolgo la clausola WHERE mi ritorna + record per ogni Cliente.
Come posso fare per ottenere come risultato della query un solo record del genere ?
codice:
ID_Cliente Nome ENTRATA USCITA
1 Pino 2006-09-06 08:00:00 2006-09-06 12:00:00
E se lo stesso cliente avesse piu' orari di Entrata ed Uscita come posso ottenere lo stesso
record con il primo orario di entrata e l'ultimo orario di uscita?
Tutto questo l'ho fatto da codice utilizzando una query nella tab clienti e, per ogni ID_Cliente,
usare una query nella tab Orari. Per una tabella con centinaia di clienti, le query aumentano.
Vorrei sapere se si puo' fare con una query sola sfruttando MySQL
Forse mi sono un po' dilungato ma credo di aver esposto bene il problema
Grazie
Un saluto a tutti