Emrah AÇIKGÖZ'ün Kişisel Sahifesi.

SQL WITH KULLANIMI (WITH USAGE IN SQL)

  • 4 sene önce, Emrah tarafından yazılmıştır.
  • 0 Yorum
  • Oracle

Selamlar,

Daha önce iki tabloyu birleştirmek için join çeşitlerini bu yazı dizisinde anlatmıştım.
şimdi ise birleştirmek istediğim veya sanal olarak iki tabloyu birleştirmek istediğimde kullandığımız with yapısından bahsedeceğiz. Özetle: iç içe sorgularda, aynı sorgunun tekrar tekrar yazılmasını ortadan kaldırmak amacımız ve oluşturduğumuz tablo, localde tutulmaktadır.

Mantığı ;

WITH <alias_name> AS (sql_subquery_statement)
SELECT column_list FROM <alias_name>[,tablename]
[WHERE <join_condition>]
When using multiple subquery aliases, the sysntax is as follows.
WITH <alias_name_A> AS (sql_subquery_statement)
<alias_name_B> AS(sql_subquery_statement_from_alias_name_A or sql_subquery_statement )
SELECT <column_list>
FROM <alias_name_A>, <alias_name_B>, [tablenames]
[WHERE <join_condition>]

Örnek;
WITH emrah AS (SELECT deptno, bdate,yas, meslek FROM emrah)
SELECT *FROM emrah WHERE yas=’20’
UNION ALL
SELECT * FROM emrah WHERE meslek like ‘AD%’;