修飾子付きカラム名

これまで自然とずっと使っていたけど、複数のテーブルのカラムを指定する場合は、

table.column

というように、テーブル名とカラム名をドット('.')でつなげる。

SELECT

postgresdb1=# SELECT * FROM users;
 id | name  |       email      
----+-------+-------------------
  1 | Alice | alice@example.com
  2 | Bob   | bob@example.com
(2 行)

postgresdb1=# SELECT * FROM orders;
 id | user_id | product  | amount
----+---------+----------+--------
  1 |       1 | Book     |      2
  2 |       1 | Pen      |      5
  3 |       2 | Notebook |      1
(3 行)

postgresdb1=# SELECT
    users.name,
    users.email,
    orders.product,
    orders.amount
FROM
    users
JOIN
    orders ON users.id = orders.user_id;
 name  |       email       | product  | amount
-------+-------------------+----------+--------
 Alice | alice@example.com | Book     |      2
 Alice | alice@example.com | Pen      |      5
 Bob   | bob@example.com   | Notebook |      1
(3 行)

postgresdb1=#

複数のテーブルを扱うSQLでは当たり前に使う。