Caffeinated
Caffeinated

Reputation: 12484

In SQL, are tuple variables mainly used to save typing-effort?

In a statement like this:

SELECT CUSTOMER_NAME, T.LOAN_NUMBER, S.AMOUNT
FROM BORROWER AS T, LOAN AS S
WHERE T.LOAN_NUMBER = S.LOAN_NUMBER

So the tuple variables here are T and S?

Upvotes: 4

Views: 6434

Answers (1)

Mark Byers
Mark Byers

Reputation: 838376

They are useful for saving typing, but there are other reasons to use them:

  • If you join a table to itself you must give it two different names otherwise referencing the table would be ambiguous.
  • It can be useful to give names to derived tables, and in some database systems it is required... even if you never refer to the name.

Regarding the name, "tuple" comes from the idea that a row is a tuple of values, e.g. (1, 'Fred', 1400). However I don't know why it is called a variable, because it cannot be modified afterwards. I don't think this is a particularly common term to describe this feature. The SQL Standards refer to them as "correlation names". Looking at the major databases, all of them use another term instead:

Upvotes: 8

Related Questions