All'inizio di SQL, è stato scelto come soluzione al problema di come gestire nomi di colonne duplicati (vedere la nota seguente).
Per prendere in prestito una query da un'altra risposta:
SELECT P.ProductName,
P.ProductRetailPrice,
O.Quantity
FROM Products AS P
INNER JOIN Orders AS O ON O.ProductID = P.ProductID
WHERE O.OrderID = 123456
La colonna ProductID
(e forse altre) è comune ad entrambe le tabelle e poiché la sintassi della condizione di join richiede riferimento ad entrambe, la "qualificazione punto" fornisce chiarimento.
Ovviamente, la soluzione migliore era di non aver mai permesso nomi di colonne duplicati in primo luogo! Fortunatamente, se si utilizza la NATURAL JOIN
sintassi più recente , la necessità delle variabili di intervallo P
e O
scompare:
SELECT ProductName, ProductRetailPrice, Quantity
FROM Products NATURAL JOIN Orders
WHERE OrderID = 123456
Ma perché la AS
parola chiave è facoltativa? Il mio ricordo da una discussione personale con un membro del comitato standard SQL (Joe Celko o Hugh Darwen) era che il loro ricordo era che, al momento della definizione dello standard, il prodotto di un fornitore (quello di Microsoft?) Richiedeva la sua inclusione e quello di un altro fornitore prodotto (Oracle?) ha richiesto la sua omissione, quindi il compromesso scelto è stato quello di renderlo facoltativo. Non ho alcuna citazione per questo, o mi credi o no!
All'inizio del modello relazionale, il prodotto incrociato (o theta-join o equi-join) delle relazioni le cui intestazioni non sono disgiunte sembrava produrre una relazione con due attributi con lo stesso nome; La soluzione di Codd a questo problema nel suo calcolo relazionale era l'uso della qualificazione dei punti, che fu successivamente emulata in SQL (fu poi realizzato che il cosiddetto join naturale era primitivo senza perdita; cioè, il join naturale può sostituire tutti i theta-join e anche prodotto incrociato.)
Fonte: Business System 12, Note codificate per le diapositive della presentazione tenuta al TTM Implementers 'Workshop, Università della Northumbria, 2-3 giugno 2011 da Hugh Darwen