SQL Server: Menggunakan Nama Alias Kolom dan Tabel

Saat kita membuat query SELECT langsung memilih kolom-kolom mana yang ingin ditampilkan dan dari tabel mana dengan langsung mengetikan nama tabelnya. Hasilnya berupa tabel dengan nama-nama kolom sesuai pada query select. Sebagaimana contoh berikut:

SELECT barcode, itemname, pricesell FROM item


Alias pada Kolom

Memberikan nama alias pada kolom dapat mengubah penamaan kolom (header text) pada result query. Contoh berikut cara menuliskan alias kolom pada query.

SELECT barcode AS Barcode, itemname AS [Nama Item], pricesell AS Harga FROM item

atau bisa juga tanpa menuliskan AS, cukup dipisah spasi dengan nama kolom asli.

SELECT barcode Barcode, itemname [Nama Item], pricesell Harga FROM item


Nama kolom alias juga dapat mengandung spasi dengan syarat nama alias tersebut diberi kurung kotak [ ].

Nama alias pada kolom juga biasanya digunakan pada penamaan kolom hasil formulasi tertentu. Yaitu kita akan menggabungkan string barcode dengan itemname serta menghitung harga dasar dari pricesell dibagi dua.

Sebagai perbandingan pertama-tama kita akan membuat query tanpa nama alias.

SELECT 'categorycode' + ' ' + itemname, pricesell/2 FROM item


Mari lihat perbedaannya dengan query yang sudah diberi nama alias.

SELECT 'categorycode' + ' ' + itemname AS Deskripsi, pricesell/2 AS [Harga Dasar] FROM item



Alias pada Tabel

Tabel juga dapat diberikan sebuah alias yang dikenal sebagai nama korelasi (correlation name) atau variabel range.

Seperti pada alias kolom, alias tabel dapat ditetapkan dengan atau tanpa kata kunci AS:

-- dengan AS
SELECT TOP 3 * FROM item AS it

-- tanpa AS
SELECT TOP 3 * FROM item it


Saat membuat query SELECT misalnya, saat menentukan field apa saja yang akan ditampilkan kita dapat menyebutkan tabelnya terlebih dahulu ditambah titik kemudian nama field/kolom seperti berikut:

SELECT TOP 3 item.barcode, item.itemname FROM item

Dengan memberi nama alias query dapat dipersingkat menjadi.

SELECT TOP 3 i.barcode, i.itemname FROM item i


Menambahkan nama tabel atau nama alias tabel sebelum nama kolom/field ini mungkin fungsinya tidak terlalu signifikan jika kita hanya menggunakan 1 tabel. Tetapi jika sudah menggunakan 2 atau lebih tabel seperti dalam query JOIN maka nama tabel dan alias akan sangat membantu pembacaan query terutama saat tabel yang di pilih memiliki nama kolom yang sama. 

Jika tabel yang kita gabungkan / JOIN memiliki nama field yang sama maka query akan error Ambiguous column name 'namakolom'.


SELECT TOP 3 i.barcode, 
     i.itemname, 
     i.categorycode 
FROM item i 
     INNER JOIN category c ON i.categorycode = c.categorycode




Post a Comment

0 Comments