ORACLE SQL Dersleri – Views

Merhaba, SQL yazılarına devam ediyoruz. Bu yazıda View konusuna bakacağız. Bir önceki yazımızda Alter, Drop komutlarını görmüştük. O yazıya buradan ulaşabilirsiniz,

ORACLE SQL Dersleri – Alter,Drop,Rename

Views :

SQL’de VIEW, bir SQL sorgusunun sonuç kümesini temel alan sanal bir tablodur.

Şöyle düşünelim, çok sık sorgu yaptığımız bir tablomuz var ve tabloda 20 kolon var ancak biz her sorgulamamızda 10 kolon kullanıyoruz. Bu yüzden sorguyu yazmak bazen zaman alabiliyor,

İşte view tam burada devreye giriyor, bir view oluşturduğumuzda ve tablonun referans kolonlarını gösterdiğimizde artık tabloyu sorgulamak yerine view’i sorgulamak yeticektir.

Bunun faydaları olarak

  •  Verilere erişimi, kullanıcının görebileceği şekilde (bazen) tam olarak ihtiyaç duyduklarını ve daha fazlasını değiştirmeyecekleri şekilde gösterir.
  •  Çeşitli tablolardaki verileri özetleyebilir ve rapor oluşturmak için kullanabilirsiniz.

View oluşturmak için yazım kuralı şu şekildedir,

CREATE VIEWview_name AS
SELECT column_name(s)
FROM table_name
WHERE condition;

Aşağıdaki tabloyu ele alalım ve FirstName, Salary kolonları için view oluşturalım

CREATE VIEW List AS
SELECT FirstName, Salary
FROM Employees;

Şimdi view ile sorgulama yapalım,

SELECT * FROM List;

Görüldüğü gibi tamda istediğimiz şekilde sonucu elde ettik.

 

Updating a View :

View ‘i güncellemek istediğimizde basit şekilde gerçekleştirebiliriz.

CREATE OR REPLACE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition;

Az önce oluşturduğumuz view ‘a  yeni bir kolonu daha görüntüleme emri vermek istersek ,

CREATE OR REPLACE VIEW List AS
SELECT FirstName, LastName, Salary
FROM Employees;

Wiev’ i kaldırmak istediğimizde drop komutu ile kaldırabiliriz,

DROP VIEW List;

About Deniz Parlak

Hi, i’m Security Data Scientist & Data Engineer at My Security Analytics. I have experienced Advance Python, Machine Learning and Big Data tools. Also i worked Oracle Database Administration, Migration and upgrade projects. For your questions [email protected]

Leave a Reply

Your email address will not be published. Required fields are marked *