Qualche tempo fa ho letto degli svantaggi del linguaggio SQL (le specifiche di base della lingua, non specifiche del venditore),
e uno degli svantaggi era che la lingua non consente di creare un set di tuple che non provengono da una tabella.
Ad esempio,
SELECT firstName, lastName from people;
questo crea una serie di tuple provenienti dalla tabella people
.
Ora, se non ho questa tabella people
, e voglio restituire una costante, mi servirebbe qualcosa del genere per restituire un set di due tuple (questo non richiederebbe una tabella):
SELECT VALUES('james', 'dean'), ('tom', 'cruisse');
Perché ne avrei bisogno?
A causa delle stesse ragioni per cui possiamo definire le costanti (non solo i tipi di base, ma anche gli oggetti e gli array) in qualsiasi linguaggio di programmazione avanzato.
Soluzioni alternative,
Sì, potrei creare una tabella temporale, riempire i dati e SELEZIONARE da quella tabella.
Questo è un trucco, per superare gli svantaggi del linguaggio SQL scadente.
Penso di aver letto su questo da qualche parte in "Il terzo manifesto" ,
ma non trovo più il paragrafo / l'esempio che parla di questo inconveniente concreto.
Conosci un riferimento a riguardo?