Yhteenveto: tämä opetusohjelma, opit, miten käyttää Oracle COALESCE()
funktio palauttaa ensimmäisen ei-null argumentteja luettelossa.
Johdanto Oracle SULAUTUVAT () – funktio
Oraakkeli COALESCE()
toiminto hyväksyy listan argumentteja ja palauttaa ensimmäinen, joka arvioi ei-null-arvon.,
seuraava esimerkki kuvaa syntaksi Oracle COALESCE()
tehtävä:
tämä syntaksi COALESCE()
funktio palauttaa ensimmäisen ei-null ilmaisun luettelosta. Se vaatii ainakin kaksi ilmaisua. Jos kaikki lausekkeet arvioidaan nollaan, funktio palauttaa nollan.,
seuraava esimerkki palauttaa arvon yksi, koska se on ensimmäinen ei-null perustelu:
RESULT---------- 1
seuraava esimerkki palauttaa arvon null, koska kaikki argumentit ovat null:
Paluu tyyppi
Jos kaikki argumentit ovat samaa tietotyyppiä, COALESCE()
funktio palauttaa arvon tietotyyppi.
Jos argumentteja on erilaisia tietotyyppejä, COALESCE()
toiminto epäsuorasti muuntaa kaikki argumentit tiedot tyyppi ensimmäinen ei-nolla-argumentti., Jos muuntaminen epäonnistuu, niin Oracle antaa virheen.
seuraava esimerkki palauttaa arvon, merkin tyyppi, koska kaikki argumentit ovat merkkejä.,
Samoin, seuraava esimerkki palauttaa arvon numeerinen tyyppi:
RESULT---------- 1
Kuitenkin, seuraava esimerkki käyttää argumentteja eri tyypit COALESCE()
toiminto:
Oracle antoi seuraavan virheilmoituksen:
Koska COALESCE()
toiminto yrittänyt muuntaa merkin tyyppi kolmas argumentti numeerinen toisen argumentin tyyppi, joka johti virhe.,
Lyhyt-piiri arviointi
COALESCE()
toiminto käyttää lyhyt-piiri arviointi. Se tarkoittaa, että funktio lakkaa arvioimasta jäljellä olevia lausekkeita, kun se havaitsee ensimmäisen arvioivan arvoksi Ei-nolla.
Harkitse seuraava esimerkki:
tässä esimerkissä COALESCE()
funktio on arvioitu ainoastaan ensimmäinen ilmaus, koska tulos ensimmäinen ilmaus oli kaksi (1+1). Se ei arvioinut toista lauseketta (1/0). Jos se olisi tehnyt niin, Oracle olisi antanut jako nollalla virhe.,
Oracle SULAUTUVAT() esimerkki
sovitaan näyte taulukko testaukseen.
Oletetaan, että sinulla on tallentaa hätä yhteystiedot työntekijöiden kanssa useita puhelinnumeroita: työpuhelin, kotipuhelin ja matkapuhelin. Voit tehdä sen, sinun täytyy luoda uusi taulukko nimeltä emergency_contacts
seuraavasti:
seuraavat lausunnot lisätä joitakin hätä yhteystiedot taulukkoon:
Jotkut yhteydet ovat toimivat vain puhelimen, kun taas toiset voivat olla koti-puhelimen ja matkapuhelimen tai ei ole yhtään puhelinnumeroa lainkaan.,
seuraava kysely hakee työntekijöitä ja heidän hätä yhteystiedot puhelinnumerot:
tässä esimerkissä käytimme COALESCE()
toiminto valitse koti puhelin, työ puhelin tai matkapuhelin, jos jokainen on saatavilla. Jos puhelinnumeroita ei ole saatavilla, palautimme N/A
kirjaimellinen merkkijono, joka tarkoittaa ei saatavilla.,
seuraavassa on esitetty kyselyn tulos:
Oracle SULAUTUVAT() ja JOS ilmaus
Voit käyttää COALESCE()
toiminto sijaan enää CASE
ilme, kun se tulee testata null useita ilmaisuja. COALESCE()
toiminto on suppeampi kuin CASE
– lauseke, joka liittyy null arvioinnit.,
If you check for NULL in two expressions, the COALESCE()
function is equivalent to the CASE
expression.
For example, the following COALESCE()
function:
is equivalent to:
Likewise,
is equivalent to
Oracle COALESCE() vs. NVL()
The COALESCE()
function is a part of SQL ANSI-92 standard while NVL()
function is Oracle specific.,
kyseessä on kahden ilmaisuja, COALESCE()
toiminto ja NVL()
näyttää olevan samankaltaisia, mutta niiden toteutukset ovat erilaisia. Katso seuraavat lausunnot:
Molemmat lausunnot palauttaa saman tuloksen, joka on yksi. Kuitenkin COALESCE()
toiminto arvioi vain ensimmäisen lausekkeen määrittämään tulos, kun NVL()
toiminto arvioi sekä ilmaisuja.,
katsotaanpa seuraavassa esimerkissä:
selvitys edellä palasi 1, kun taas seuraava esimerkki aiheuttaa virheilmoituksen:
virhe:
Koska NVL()
toiminto arvioi toisen ilme 1/0
, joka aiheuttaa virheen.
tässä opetusohjelmassa, olet oppinut, miten käyttää Oracle COALESCE()
funktio palauttaa ensimmäisen ei-null ilmaisun luettelo ilmaisuja.
- Auttoiko tämä opetusohjelma?,
- YesNo