Alias in Query


Apa itu Alias?

Alias pada SQL berguna untuk mengganti nama suatu kolom atau tabel pada query kita. Alias atau nama yang kita ingin berikan bebas. Tujuannya adalah memudahkan kita dalam membaca query dan menyederhanakan query.

Alias Subquery?

Alias subquery adalah nama lain yang kita berikan pada sebuah subquery sehingga dalam penggunaan subquery tersebut kita dapat menggunakan alias atau nama lainnya.


Alias pada klausa SELECT

Pada klausa SELECT, alias digunakan untuk mengganti nama kolom. Alias dapat dibuat menggunakan keyword AS.
Berikut adalah syntax penggunaan alias pada SELECT:

SELECT column1 AS alias1, column2 AS alias2, ...
FROM table1;

Berikut adalah contoh penggunaan syntax di atas untuk memberi nama pada kolom:

SELECT
    customer_name AS name,
    LEFT(customer_gender, 1) AS gender
FROM MsCustomer;

Alias pada klausa FROM

Pada klausa FROM, alias dapat digunakan untuk:

  • Alias pada JOIN
  • Alias untuk mengganti nama table
  • Alias subquery

Alias pada Join

Alias dapat digunakan untuk menyederhanakan table ketika melakukan JOIN.
Berikut adalah contoh penggunaan alias pada JOIN:

SELECT
    p.product_name,
    pt.product_type_name
FROM
    MsProduct p JOIN MsProductType pt ON p.product_type_id = pt.product_type_id;

Pada contoh di atas, table MsProduct diberikan alias sebagai p, sedangkan table MsProductType diberikan alias sebagai pt. p.product_name artinya kolom product_name pada table p (MsProduct). pt.product_type_name artinya kolom product_type_name pada table pt (MsProductType).

Alias untuk mengganti nama table

Sama halnya seperti mengganti nama kolom, untuk mengganti nama table dapat menggunakan keyword AS.
Berikut adalah syntax penggunaan alias untuk mengganti nama table:

SELECT column1, column2, ...
FROM table1 AS alias1;

Pada contoh di bawah, table MsStaff diberikan alias sebagai s:

SELECT *
FROM MsStaff AS s
WHERE s.salary > 5000000;

Alias Subquery

Subquery yang diletakkan pada klausa FROM dapat diberikan nama atau alias layaknya table.
Berikut adalah syntax alias subquery:

SELECT column1, column2, ...
FROM (subquery) AS alias1

Berikut adalah contoh penggunaan alias subquery pada klausa FROM bersamaan dengan fungsi agregat untuk menampilkan produk dengan harga tertinggi:

SELECT product_name, product_price
FROM
    MsProduct,
    (SELECT MAX(product_price) AS highest_price) AS sq1
WHERE
    product_price = sq1.highest_price