Coalesce sql: opis, upotreba, primjeri
Prilikom sastavljanja SQL upita često se događa kada odaberete podatke, potrebno je usporediti vrijednosti nekoliko stupaca i izlaziti jedan od njih koji sadrži podatke (nije prazan). Ovaj problem je savršeno riješen izrazom Coalesce. U ovom ćete članku pronaći cjelovit opis izraza Coalesce sql, opis značajki korištenja, kao i primjere.
sadržaj
Izlaz ne-null vrijednosti pomoću Coalesce. Značajke
Razmislite o značajkama upotrebe Sql Coalesce:
- Dodjeljuje naznaku bilo kojeg broja argumenata (za razliku od Isnull / Nvl / Nvl2, broj argumenata u kojima je ograničen).
- Može prihvatiti podupita kao argument.
- Vraća rezultat jednak prvi osim Null ili Null, ako se ne pronađe vrijednost koja nije Null.
- Sql Coalesce se može koristiti u odabranoj klauzuli da biste odabrali vrijednost koja nije prazna, a također u odjeljku gdje odrediti da skup stupova s praznim vrijednostima nije dopušten (/ dopušteno).
- Ovaj izraz je ekvivalentan upotrebi izraza za slučaj, koji redovito provjerava svaki argument za stanje. Kada argument1 nije ništav onda argument1. Zapravo, Coalesce je "prečac" dizajniran za jednostavnu upotrebu, au mnogim optimizatorima za upite DBMS prepisuje izraz Coalesce na slučaju.
- Sql Coalesce funkcije dostupne su u svim vodećim relacijskim sustavima sustavi upravljanja bazom podataka.
Sintaksa Coalesce
Svatko tko je ikada upotrijebio Coalesce za sastavljanje sql-upita, zna da je sintaksa ovog izraza iznimno jednostavna. Dovoljno je navesti u zagradama argumente, provjeriti na Nul, odvojen zarezima. Ako pretpostavimo da argumenti imaju nazive arg1, arg2, hellip-argN, tada će sintaks Coalesce izgledati ovako:
Coalesce (arg1, arg2, hellip- argN).
Pripremimo nekoliko tablica za proučavanje mehanizma tog izraza.
Priprema tablica
Da bismo bolje razumjeli opis Coalesce sql, izradit ćemo u bazi dvije tablice koje sadrže informacije o nekretninama.
Prva tablica prostora treba sadržavati nazive objekata nekretnina i njihovog područja. Područje može biti profinjeno (area_yt) ili deklarirano (area_decl).
id | object_name | area_yt | area_decl |
1 | Zgrada 1 | 116.2 | 114 |
2 | Nedovršeni građevinski objekt 1 | 568 | |
3 | Soba 1 | 64,7 | |
4 | Soba 2 | 34.2 | |
5 | Zemljište 1 | 112 | 111,6 |
6 | Objekt 1 | ||
7 | Sobe 3 | 27,9 | |
8 | Izgradnja 2 | 37.2 | 36.4 |
9 | Građevina 2 |
Druga tablica Basic_characteristic neka sadrži informacije o glavnim karakteristikama nekretnine - produžetak (produžetak), dubine (dubina), područje (područje), volumen (Područje primjene), visina (visina).
id | object_name | nastavak | dubina | područje | djelokrug | visina |
1 | Zgrada 1 | 892,4 | 30 | |||
2 | Građevina 2 | 48 | ||||
3 | Objekt 1 | 164,7 | ||||
4 | Zemljište 1 | |||||
5 | Soba 1 | 23.6 | ||||
6 | Soba 2 | 34.7 | ||||
7 | Sobe 3 | 19.8 |
Ispitali smo sintaksu Coalesce sql, opis, značajke korištenja i izravno se primijenili na primjere.
Primjeri upotrebe
Sintaksa Coalesce izraz je vrlo jednostavna, ali važno je zapamtiti da će rezultat naredbe biti prva ne prazna vrijednost koja se nalazi iz popisa argumenta. Ova je napomena vrlo važna, pa se argumenti u izrazu moraju staviti u red važnosti. Najlakši način za razumijevanje načela tablice područja. Unesite zahtjev koji odabire naziv entiteta, kao i vrijednost područja:
SELECT Area.id, Area.object_name, coalesce (Area.area_yt, Area.area_decl) Iz područja |
I dobiti rezultat:
id | object_name | srasti |
1 | Zgrada 1 | 116.2 |
2 | Nedovršeni građevinski objekt 1 | 568 |
3 | Soba 1 | 64,7 |
4 | Soba 2 | 34.2 |
5 | Zemljište 1 | 112 |
6 | Objekt 1 | |
7 | Sobe 3 | 27,9 |
8 | Izgradnja 2 | 37.2 |
9 | Građevina 2 |
Za projekt „Jačanje 1”, „Plot 1” i „Struktura 2” su obje vrijednosti trg su bili puni, ali područje je rafiniran u prioritet, kao što smo to ukazao na popisu prvog argumenta. Izraz srasti pronašao prvi ne-null vrijednost, i doveo ga da se zaustavi daljnje gledanje argumente. Ova konstrukcija upita - pravo, jer precizniji specifična površina od deklariranih. Ako smo naveden kao prvi argument deklariranih područja, prilikom ispunjavanja u ovom području stola da bi bio prioritet.
Osim upotrebe u odabiru, često se izraz Coalesce primjenjuje s klauzulom Gdje. Omogućuje vam izrezivanje rezultata onih linija u kojima je popis polja prazan (ili obrnuto, uključite samo one vrijednosti u rezultatima gdje popis polja nije popunjen). Ta je situacija posvuda: na primjer, u vrijeme registracije novog zaposlenika, u bazu su unesene samo osnovne informacije o zaposleniku, a detaljne informacije ostale su "kasnije". Postupno, "praznine" plutaju se - bilo prije čeka, ili prilikom slanja zaposlenika na godišnji odmor / poslovni put / bolovanje.
Iz tablice s glavnim karakteristikama objekata nekretnina, koji nemaju nijednu od vrijednosti svojstava, odaberite:
ID SELECT, naziv objekta OD Basic_characteristic Gdje se spajaju (proširenje, dubina, površina, opseg, visina) je nula |
Za ovaj upit postoji jedna utakmica u tablici - objekt "Zemljište 1" u kojem su sva polja s obilježjima prazna:
id | object_name |
4 | Zemljište 1 |
Nadamo se da će vam naš detaljni opis Coalesce sql pomoći da razumijete sve značajke korištenja ovog izraza, kao i da se bave važnim nijansama.
- SQL različita: opis, primjeri, svojstva
- Izjava Izabrati (SQL)
- Osnovne SQL izjave
- Null-modem kabel: opis sučelja, funkcije, ožičenje
- Kako sastaviti SQL upite - detaljni primjeri
- Mann-Whitney kriterij: primjer, tablica
- BigInteger Java: radi s velikim brojem
- SQL (vrste podataka): tablica
- Funkcija `INDEX` u programu Excel: opis, primjena i primjeri
- Što funkcionira SQL CONCAT?
- Kako izračunati modul u programu Excel
- Funkcija stvaranja tablice u SQL - Stvaranje tablice
- Funkcija tabulacije: kako napisati program?
- Funkcija `If` u programu Excel
- Kako izračunati kvadratni korijen u Excelu?
- Printf C: opis, oblikovanje, primjeri
- Funkcija zbrajanja u SQL: SUM
- Objavi SQL: opis. Transact-SQL
- Praksa korištenja funkcije računanja MySQL
- Kako koristiti u MySQL: vremensku oznaku i datetime
- Grupiranje MySQL zapisa: skupina po