Hier habe ich zwei Tabelle Kunde und Auftrag. Schema der beiden Tabelle ist Orders = {OrderID, CustomerID, Preis} Kunden = {CustomerID, Name, Adresse}Unterschied zwischen beitreten
Nun, wenn ich
SELECT Orders.OrderID, Customers.Name
FROM Orders
INNER JOIN Customers
ON Orders.CustomerID=Customers.CustomerID;`
oder
Select Orders.OrderID, Customers.Name
from Orders,Customers
where Orders.CustomerID = Customers.CustomerID`
beide laufen produziert gleiches Ergebnis. Was unterscheidet dann beim Schreiben auf verschiedene Arten? Ich bin verwirrt darüber. Wird die zweite Abfrage mit innerem Join aufgerufen?
Die zweite Syntax ist, was als implizite Join bekannt ist. Sie möchten es im Allgemeinen vermeiden und bevorzugen die erste Syntax. http://stackoverflow.com/questions/44917/explicit-vs-implicit-sql-joins – CSharper
Zweite ist die älteste und veraltete Syntaxis –
Es ist ein Unterschied in den Standards der erste ist ANSI 92 konform der andere ist der Standard vor 1992 Beide sind vollkommen gültig; obwohl INNER JOIN Syntax ist die modernere. Die meisten aktuellen Cost Based Optimizer werden sie in Bezug auf die Ausführung gleich behandeln. es gibt leichte Abweichungen, wenn die Komplexität zunimmt. – xQbert