Při sestavování dotazů sql se často objevuje situace, kdy při odběru vzorků je nutné porovnat hodnotu několika sloupců a od nich odvodit, která obsahuje data (není prázdná). Tento problém je dokonale vyřešen výrazem Coalesce. V tomto článku naleznete úplný popis výrazu Coalesce sql, popis vlastností použití a příklady.
Vyplňujte hodnoty, které nejsou prázdné, pomocí programu Coalesce. Funkce
Syntaxe splynout
Příprava tabulek
id
jméno_objektu
area_yt
35
1
Budova 1
1162
50)
2
Objekt neúplné konstrukce 1
)
568
3
)
4
95)
342
5
1116
6
125)
Pokoj 3
(141 ) 149
8
Budovy 2
Budova 2
Druhá tabulka Basic_characteristic obsahuje informace o hlavních vlastnostech vlastnosti - Rozšíření, hloubka, plocha Oblast, Rozsah, Výška.
id hodnota
object_name
rozšíření
hloubky
,
, oblast
Obsah
, výška
1
(211 )
Budova 1
, 8924
30
2
Building 2 (242 )
,
,
, 48
3
Konstrukce 1
, 1647
4
Land 1
, 5
, umístění 1
, 236
6
umístění 2
(357 )
, 347
7
, umístění 3
(389 )
, 198
, považuje za syntaxe splývají SQL popis , zvláštní použijte a přejděte přímo k příkladům.
Příklady použití
Vyberte Area.id Area.object_name, splývají (Area.area_yt, Area.area_decl) z oblasti (410 )
a dostanete výsledek:
iD hodnotu
object_name
splývají
1
Stavební 1
, 1162
2
1 zařízení ve výstavbě
, 568
3
Prostor 1
, 647
4
umístění 2
(468 )
, 342
, 5
Land 1
, 112
6
Stavba 1
7
, umístění 3
, 279
8
Konstrukce 2
, 372
, 9
2 budovy
, na objektech budování "1", „země Plot 1 "a" Budova 2 "byly vyplněny oběma hodnotami oblasti, ale oblast se ukázala být prioritou, jak bylo uvedeno v seznamu argumentů prvního. Výraz splývají našel první non-prázdnou hodnotu a přivedl ho zastavil další argumenty recenzi. Tato konstrukce požadavku je pravdivá, protože specifikovaná oblast je přesnější než deklarovaná. Máme-li zadán jako první argument ohlášené plochy, pak plnění polí v tabulce, bylo by to v prioritě. Kromě použití ve výběru se často používá výraz Coalesce s podmínkou Kde. Umožňuje ukončit výsledek těch řádků, ve kterých je hodnota seznamu polí prázdná(nebo naopak, zahrnout do výsledku pouze hodnoty, kde není vyplněn seznam polí). K této situaci dochází všude: například v podniku při registraci nového zaměstnance v databázi pouze základní informace o něm a vyplnění podrobných informací, které zůstaly "později". Postupně se objevují "mezery" - a to buď před ověřením, zda zaměstnanec opustí dovolenou /cestovní /nemocniční dovolenou.
Vyberte z tabulky z hlavních charakteristik vlastností, které ještě nedokončily některou z hodnot:
SELECT id, object_name FROM Basic_characteristic Kde COALESCE (Extension, hloubka, plocha, Scope, výška) je null
Podle výsledků v tabulce je náhoda - objekt "plot 1", který je k dispozici všechna pole prázdná:
id hodnota
object_name
4
Land 1