Ciao a tutti!
Come posso ottenere in SQL una query equivalente a quella Oracle:
SELECT * FROM apprentice WHERE IDA = (SELECT IDA FROM Apprentice-master WHERE IDA = (SELECT IDA FROM Employee WHERE surname='Dee'))
Grazie!
Ciao a tutti!
Come posso ottenere in SQL una query equivalente a quella Oracle:
SELECT * FROM apprentice WHERE IDA = (SELECT IDA FROM Apprentice-master WHERE IDA = (SELECT IDA FROM Employee WHERE surname='Dee'))
Grazie!
Potrebbe essere cosi' se per SQL intendi dire senza subquery ... :
codice:SELECT * FROM apprentice app INNER JOIN Apprentice-master apm ON app.IDA = apm.IDA INNER JOIN Employee emp ON emp.IDA = apm.IDA WHERE emp.surname = 'Dee'
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
Ciao!
Grazie della risposta. In effetti sul manuale SQL ho letto che è lecito fare una query come quella da me postata inizialmente. Solo che mi viene riportato un errore di sintassi e quindi cercavo un'altra soluzione. Quella da te proposta però non mi pare equivalente perchè mi restituisce anche colonne esterne alla tabella apprentice... Dove sbaglio?
Grazie ancora!
beh! ovvio che ti presenta anche le colonne delle due tabelle in JOIN. Basta che tu faccia l'elenco delle sole colonne che ti servono nella SELECT per ricevere solo quelleOriginariamente inviato da fabbio86
Ciao!
Grazie della risposta. In effetti sul manuale SQL ho letto che è lecito fare una query come quella da me postata inizialmente. Solo che mi viene riportato un errore di sintassi e quindi cercavo un'altra soluzione. Quella da te proposta però non mi pare equivalente perchè mi restituisce anche colonne esterne alla tabella apprentice... Dove sbaglio?
codice:SELECT app.IDA, app.name, app.ciccio, app.pallo from.....
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.