КомпютриСофтуер

Coalesce sql: описание, използване, примери

Когато компилирате SQL-Queries, често се случва, че когато избирате данни, трябва да сравните стойностите на няколко колони и да изведете един от тях, който съдържа данни (не празни). Този проблем е напълно решен от израза Коалес. В тази статия ще намерите пълно описание на изразът Coalesce sql, описание на характеристиките на употреба, както и примери.

Резултат на стойности, които не са нула, като се използва Coalesce. Удобства

Обмислете възможностите за използване на Sql Coalesce:

  1. Позволява да се посочи произволен брой аргументи (за разлика от Isnull / Nvl / Nvl2, броят на аргументите, в които е ограничен).
  2. Може да приеме подчинените като аргумент.
  3. Връща резултата равен на първата ненулева стойност или Null, ако не е намерена стойност.
  4. Sql Coalesce може да се използва в клаузата за избор, за да изберете празна стойност, а също и в Къде да посочите, че набор от колони с празни стойности не е разрешен (/ разрешен).
  5. Този израз е еквивалентен на прилагането на израза на случая, като всеки аргумент се проверява последователно за условието Когато argument1 не е null след това argument1. Всъщност, Coalesce е "пряк път", създаден за лесна употреба, и в много DBMS оптимизатори на заявки пренаписват Coalesce израз на Case.
  6. Характеристиките на Sql Coalesce се предлагат във всички водещи системи за управление на релационни бази данни.

Синтаксис Коалес

Всеки, който някога е използвал Coalesce, за да компилира SQL заявки, знае, че синтаксисът на този израз е много прост. Достатъчно е да посочите в скоби аргументи, които са отметнати в Null, разделени със запетаи. Ако приемем, че аргументите имат имената arg1, arg2, ... argN, тогава синтаксисът на Coalesce ще изглежда така:

Коалес (arg1, arg2, ... argN).

Ще подготвим няколко таблици за изучаване на механизма на този израз.

Подготовка на маси

За да разберем по-добре описанието на Coalesce sql, ще създадем в базата данни две таблици, съдържащи информация за обектите на недвижимите имоти.

Първата таблица на площта трябва да съдържа имената на обектите за недвижими имоти и тяхната площ. Областта може да бъде определена (area_yt) или обявена (area_decl).

идентификатор

object_name

area_yt

area_decl

1

Сграда 1

116,2

114

2

Незавършена конструктивна цел 1

568

3

Стая 1

64.7

4

Стая 2

34.2

5

Парцел 1

112

111,6

6

Устройство 1

7

Стаи 3

27.9

8

Строителство 2

37.2

36.4

9

Сграда 2

Втората основна характеристика таблица трябва да съдържа информация за основната характеристика на обекта за недвижимо имущество - Разширение, Дълбочина, Площ, Обхват, Височина.

идентификатор

object_name

разширение

дълбочина

област

обхват

височина

1

Сграда 1

892,4

30

2

Сграда 2

48

3

Устройство 1

164,7

4

Парцел 1

5

Стая 1

23.6

6

Стая 2

34.7

7

Стаи 3

19.8

Разгледахме синтаксиса на Coalesce sql, описанието, характеристиките на употребата и пристъпихме директно към примерите.

Примери за използване

Синтаксисът на израза Coalesce е изключително прост, но е важно да запомните, че резултатът от командата ще бъде FIRST не празна стойност, намерена от списъка с аргументи. Тази забележка е много важна, така че аргументите в израза трябва да бъдат поставени в ред на важност. Най-лесният начин да разберете принципа на таблицата на района. Направете заявка, която избира името на имота, както и стойността на района:

SELECT Area.id, Area.object_name, обединяване (Area.area_yt, Area.area_decl)

От района

И да получите резултата:

идентификатор

object_name

сливам

1

Сграда 1

116,2

2

Незавършена конструктивна цел 1

568

3

Стая 1

64.7

4

Стая 2

34.2

5

Парцел 1

112

6

Устройство 1

7

Стаи 3

27.9

8

Строителство 2

37.2

9

Сграда 2

За обектите "Сграда 1", "Парцел 1" и "Строеж 2" бяха попълнени двете стойности на района, но в приоритет бе рафинирана площта, тъй като първо я посочихме в списъка с аргументи. Израза "Coalesce" откри първата неприсната стойност и я оттегли, спирайки по-нататъшното разглеждане на аргументите. Това конструиране на искането е вярно, защото конкретната област е по-конкретна от декларираната. Ако посочим областта, обявена за първи аргумент, тогава ако това поле на таблицата е пълна, то ще бъде приоритетно.

В допълнение към използването в Select, много често изразът Coalesce се прилага с клаузата Where. Той ви позволява да изрежете от резултата линиите, в които списъкът с полета е празен (или обратно, включвайте само тези стойности във резултата, където списъкът с полета не е попълнен). Тази ситуация е навсякъде: например, по време на регистрирането на нов служител, в базата данни е въведена само основна информация за служителя, а подробната информация е оставена "за по-късно". Постепенно "пропуските" се променят - преди проверката или при изпращане на служителя на почивка / бизнес пътуване / отпуск по болест.

Изберете от таблицата основните характеристики на недвижимите имоти, които не запълват никоя от стойностите на характеристиките:

SELECT id, object_name

От Basic_characteristic

Където се обединява (разширение, дълбочина, площ, обхват, височина) е нула

За тази заявка има едно съвпадение в таблицата - обект "Парцел 1", в който всички полета с характеристики са празни:

идентификатор

object_name

4

Парцел 1

Надяваме се, че нашето подробно описание на Coalesce sql ви помогна да разберете всички характеристики на използването на този израз, както и да се справите с важни нюанси.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 bg.birmiss.com. Theme powered by WordPress.