Buat dan kueri tampilan

Selesai

Tampilan adalah kueri tersimpan yang dapat Anda buat di database Anda. Tampilan tunggal dapat mereferensikan satu atau beberapa tabel. Dan, seperti tabel, tampilan terdiri dari baris dan kolom data. Anda dapat menggunakan tampilan sebagai sumber untuk kueri Anda dengan cara yang sama seperti tabel. Namun, tampilan tidak menyimpan data secara terus-menerus; definisi tampilan Anda dibongkar saat runtime dan objek sumber ditanyai.

Kesamaan yang tampak antara tabel dan tampilan memberikan manfaat penting. Aplikasi Anda dapat ditulis untuk menggunakan tampilan alih-alih tabel yang mendasarinya, melindungi aplikasi dari membuat perubahan pada tabel. Ini memberi Anda lapisan keamanan tambahan untuk data Anda.

Selama tampilan terus menyajikan struktur yang sama ke aplikasi pemanggil, aplikasi juga akan menerima hasil yang konsisten. Dengan cara ini, tampilan dapat dianggap sebagai antarmuka pemrograman aplikasi (API) ke database untuk tujuan mengambil data.

Catatan

Tampilan harus dibuat oleh pengembang database atau administrator dengan izin yang sesuai dalam database.

Buat tampilan

Untuk membuat tampilan, Anda menggunakan pernyataan CREATE VIEW untuk memberi nama dan menyimpan satu pernyataan SELECT. Anda akan membuat tampilan menggunakan sintaks berikut:

CREATE VIEW <schema_name.view_name> [<column_alias_list>] 
[WITH <view_options>]
AS select_statement;

Catatan

Klausa ORDER BY tidak diizinkan dalam definisi tampilan kecuali jika tampilan menggunakan elemen TOP, OFFSET/FETCH, atau FOR XML.

Misalnya, untuk membuat tampilan bernama Sales.CustOrders berdasarkan pernyataan SELECT khusus yang mencakup beberapa tabel, Anda dapat menulis kueri berikut:

CREATE VIEW Sales.CustOrders
AS
SELECT
  O.custid, 
  DATEADD(month, DATEDIFF(month, 0, O.orderdate), 0) AS ordermonth,
  SUM(OD.qty) AS qty
FROM Sales.Orders AS O
  JOIN Sales.OrderDetails AS OD
    ON OD.orderid = O.orderid
GROUP BY custid, DATEADD(month, DATEDIFF(month, 0, O.orderdate), 0);

Perhatikan bahwa sebagian besar kode dalam contoh terdiri dari pernyataan SELECT Anda. Pernyataan SELECT di dalam definisi tampilan bisa serumit atau sesederhana yang Anda inginkan.

Minta tampilan

Untuk mengkueri tampilan dan mengambil hasil darinya, rujuk ke dalam klausa FROM dari pernyataan SELECT, seperti yang Anda rujuk ke tabel. Misalnya, untuk mengembalikan ID pelanggan, bulan pemesanan, dan jumlah item dari setiap pesanan dalam tampilan Sales.CustOrders, Anda dapat menjalankan kueri berikut:

SELECT custid, ordermonth, qty
FROM Sales.CustOrders;