View Full Version : [SQL/generico]Ricavare dati da più tabelle
RaouL_BennetH
20-06-2008, 11:57
Altro problemuccio del giorno:
ho due tabelle
Ordini, Clienti
supponendo che:
Ordini
ID
ID_Cliente
DescrizioneOrdine
Clienti
ID_Cliente
DenominazioneCliente
//Vorrei fare una select che mi restituisca la descrizione ordine e la denominazione cliente
SELECT Ordini.DescrizioneOrdine, Clienti.DenominazioneCliente
FROM Ordini, Clienti
WHERE Ordini.ID_Cliente = Clienti.ID_Cliente
Mi sembrava così semplice eppure se mando in esecuzione la query mi dice che è impossibile perchè mancano alcuni parametri necessari.
Grazie :)
RaouL.
bhe in effetti immagino che ID della tabella ordini e ID_CLIENTE della tabella clienti siano PRIMARY KEY
ID_CLIENTE sia una FOREIGN KEY
SELECT Ordini.DescrizioneOrdine, Clienti.DenominazioneCliente
FROM Ordini INNER JOIN Clienti on Ordini.ID_Cliente = Clienti.ID_Cliente
WHERE "codizione"
corregetemi se sbaglio
RaouL_BennetH
20-06-2008, 12:53
bhe in effetti immagino che ID della tabella ordini e ID_CLIENTE della tabella clienti siano PRIMARY KEY
ID_CLIENTE sia una FOREIGN KEY
SELECT Ordini.DescrizioneOrdine, Clienti.DenominazioneCliente
FROM Ordini INNER JOIN Clienti on Ordini.ID_Cliente = Clienti.ID_Cliente
WHERE "codizione"
corregetemi se sbaglio
Non sbagli :)
Grazie mille !!!!!
RaouL_BennetH
20-06-2008, 13:25
Avrei un'altra domandina... e se le tabelle fossero tre?
allora:
tblMansioni
CodiceMansione
DescrizioneMansione
tblSettori
CodiceSettore
DescrizioneSettore
tblImpiegati
CodiceBadge
Cognome
Nome
CodiceMansione
CodiceSettore
In pratica quello che dovrei tirare fuori è:
Dato il codice settore ed il codice mansione, ricavare:
codicebadge, cognome, nome, descrizione settore, descrizione mansione.
Con due tabelle ci riesco grazie al tuo esempio di prima, con tre.. no :(
Grazie.
RaouL.
SELECT tblImpiegati.CodiceBadge,
tblImpiegati.Cognome,
tblImpiegati.Nome,
tblSettori.DescrizioneSettore,
tblMansioni.DescrizioneMansione
FROM tblImpiegati
JOIN tblSettori ON tblImpiegati.CodiceSettore = tblSettori.CodiceSettore
JOIN tblMansioni ON tblImpiegati.CodiceMansione = tblMansioni.CodiceMansione
WHERE tblSettori.CodiceSettore = ?
AND tblMansioni.CodiceMansione = ?
voglio il 20% :O
RaouL_BennetH
20-06-2008, 16:33
SELECT tblImpiegati.CodiceBadge,
tblImpiegati.Cognome,
tblImpiegati.Nome,
tblSettori.DescrizioneSettore,
tblMansioni.DescrizioneMansione
FROM tblImpiegati
JOIN tblSettori ON tblImpiegati.CodiceSettore = tblSettori.CodiceSettore
JOIN tblMansioni ON tblImpiegati.CodiceMansione = tblMansioni.CodiceMansione
WHERE tblSettori.CodiceSettore = ?
AND tblMansioni.CodiceMansione = ?
voglio il 20% :O
Accordato!! Posso pagarti in surgelati però :D
L'azienda dove lavoro si occupa di questo ed io ho qualche sconticino come impiegato :fagiano:
RaouL_BennetH
20-06-2008, 17:01
uhm.. aspè.. però:
Ho fatto così:
SELECT t1.CodiceBadge, t1.Cognome, t1.Nome,
t2.DescrizioneSettore,
t3.DescrizioneMansione
FROM tblImpiegati AS t1
JOIN tblSettori AS t2 ON t1.CodiceSettore = t2.CodiceSettore
JOIN tblMansioni AS t3 ON t1.CodiceMansione = t3.CodiceMansione
WHERE t2.CodiceSettore = ?
AND t3.CodiceMansione = ?
Mi da errore:
Errore di sintassi(operatore mancante) nell'espressione della query
't1.CodiceSettore = t2.CodiceSettore
....
RaouL_BennetH
20-06-2008, 17:35
oh... don't mind...
errore stupido mio :)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.