При компилиране на sql-заявки често възниква ситуация, когато при извадката на данните е необходимо да се сравни стойността на няколко колони и да се извлекат от тях, които съдържат данни (които не са празни). Този проблем е напълно решен чрез израза Коалес. В тази статия ще намерите пълното описание на израза на Coalesce sql, описание на характеристиките на използване и примери.
Изведете непразни стойности, използвайки Coalesce. Характеристики
Синтаксис на сливане
Подготовка на таблици
id
object_name
area_yt
area_decl
35
1
Сграда 1
1162
50)
2
Обект на непълна конструкция 1
)
568
3
Помещения 1
647
)
4
Помещения 2
95)
342
5
земя 1
112
1116
6
сграда 1
125)
Стая 3
) 149
8
Сгради 2
Сграда 2
Втората таблица на основната характеристика съдържа информация за основните характеристики на имота - разширение, дълбочина, площ (Площ, обхват, височина.
Дълбочина
196)
Площ
Обхват
височина
1
Сграда 21
8924
227)
30
2
сграда 2
259)
48
3
Сграда 1
1647 274)
4
земя 1
1
236
)
347
7
Помещения 3
)
198
Синтаксисът на Coalesce sql, описание , своеобразен използвайте и отидете направо към примерите.
Примери за използване
SELECT Area.id Area.object_name, coalesce (Area.area_yt, Area.area_decl) FROM Area
)
И получете резултата:
id
object_name
Коалес
1
Сграда 1
1162
2
Предмет на непълно строителство 1
568
3
Помещения 2
Помещения 1
647
342
5
Земя 1
112
6
Сграда
7
Помещения 3
372
9
Сграда 2
В обектите „Сграда 1“, „Земя“ Парцел 1 "и" Сграда 2 "са запълнени с двете стойности на района, но районът се оказва приоритет, тъй като е посочен в списъка на аргументите на първия. Изразът Coalesce намери първия неотрицателен смисъл и го отблъсна, като спря по-нататъшния преглед на аргументите. Тази конструкция на заявката е вярна, тъй като посочената област е по-определена от декларираната. Ако посочим като първи аргумент декларираната област, тогава при попълването на това поле на таблицата тя ще бъде в приоритета. В допълнение към използването в Select, много често изразът Coalesce се прилага с условието Where. Тя ви позволява да отрежете резултата от тези линии, в които стойността на списъка с полета е празна(или обратното, включете в резултата само стойностите, където списъкът на полетата не е попълнен). Тази ситуация се случва навсякъде: например, в предприятието, когато регистрирате нов служител в базата данни само основната информация за него, и попълването на подробната информация, оставена "за по-късно". Постепенно се появяват „пропуски“ - или преди да се провери дали служителят напуска почивка /пътуване /отпуск по болест.
Изберете от таблицата основните характеристики на недвижимия имот, в който не се запълва нито една от стойностите на характеристиките:
SELECT id, object_name FROM Basic_characteristic Къде се слива (разширение, дълбочина, площ, обхват, височина) null
Съгласно това искане в таблицата има едно съвпадение - обект "Земя 1", в който всички полета с характеристики са празни:
id
542) object_name
4
земя 1