فانكشن COALESCE در اوراکل
بدين صورت تلفظ مي شود(كو-اِ-لِس).
جايگزين بسيار خوب به جاي فانكشن NVL در اوراکل می باشد و در بعضي مواقع بجاي دستور (Case When)
عبارت دستوري:
Oracle function:
COALESCE ("expression 1", "expressions 2", ...)
COALESCE ("expression 1", "expressions 2", ...)
-
بدين صورت است كه اگر عبارت اول null بود عبارت دوم و اگر عبارت دوم null بود عبارت سوم و …
-
استفاده از فانكشن بعنوان عبارت در اوراکل.
-
داراي Performance خوب.
-
نوع Type هاي عبارتها بايد شبيه هم باشد. اگر نبود از توابع To_Char,To_Number, … استفاده كنيد.
براي درك بهتر با مثال بيان مي كنم
1)
SELECT COALESCE(NULL, NULL, '3') FROM dual
Result : 3
SELECT COALESCE(NULL, NULL, '3') FROM dual
Result : 3
2)
SELECT COALESCE(exp1 , To_Char(FNC(P_TEST)) FROM dual
SELECT COALESCE(exp1 , To_Char(FNC(P_TEST)) FROM dual
مثال : استفاده بجاي Case When در اوراکل در زیر نشان داده شده است.
SELECT CASE ("column_name")
WHEN "expression 1 is not NULL" THEN "expression 1"
WHEN "expression 2 is not NULL" THEN "expression 2"
...
[ELSE "NULL"]
END
FROM "table_name";
WHEN "expression 1 is not NULL" THEN "expression 1"
WHEN "expression 2 is not NULL" THEN "expression 2"
...
[ELSE "NULL"] END
FROM "table_name";
Table Contact_Info
Name Business_Phone Cell_Phone Home_Phone
Jeff 531-2531 622-7813 565-9901
Laura NULL 772-5588 312-4088
Peter NULL NULL 594-7477
Name Business_Phone Cell_Phone Home_Phone
Jeff 531-2531 622-7813 565-9901
Laura NULL 772-5588 312-4088
Peter NULL NULL 594-7477
3)
SELECT Name,COALESCE (Business_Phone, Cell_Phone, Home_Phone) Contact_Phone FROM Contact_Info;
Result:
Name Contact_Phone
Jeff 531-2531
Laura 772-5588
Peter 594-7477
SELECT Name,COALESCE (Business_Phone, Cell_Phone, Home_Phone) Contact_Phone FROM Contact_Info;
Result:
Name Contact_Phone
Jeff 531-2531
Laura 772-5588
Peter 594-7477
4.5/5 - (2 امتیاز)
جستجو
مطالب اخیر
نظرات اخیر
- محمد در تبدیل تاریخ ها در اوراکل
- مجتبی خالقداد در پلاگین کد امنیتی اوراکل اپکس(ای پکس)
- سعید حسن پور در تبدیل تاریخ ها در اوراکل
- حسین در تبدیل تاریخ ها در اوراکل
- مهرسا سعادت در نقشه راه اوراکل APEX برای نسخه بعدی
برچسبها
AOP
APEX
apexrad
captcha
CDN
constraint
ebs
epg
forms
index
injection
iran
iranoug
longtype
Materialized-view
Oracle Application Express
orclapex
performance
Persian Sort
plsql
session
sql
standalone
variable scope
XE
امنیت
اوراکل
اپکس
ایران
ایندکس
ایپکس
بنبست
بهینه ساز
تاریخ شمسی
ترجمه
ترفند
حروف فارسی
داکیومنت
داینامیک
شمسی
مرتب سازی فارسی
نصب
نکته
پلاگین
یونیک