yhteenveto: tässä opetusohjelmassa opit vertaamaan kahta riviä samassa taulukossa Oraclessa.
olettaen, että sinulla on product_prices
taulukko, joka tallentaa kaikkien tuotteiden hintahistorian. Seuraava lausuma luo product_prices
– taulukon:
Code language: SQL (Structured Query Language) (sql)
product_prices
taulukossa on seuraavat sarakkeet:
-
id
on tunnistesarake, jonka arvot syntyvät automaattisesti.id
on taulukon ensisijainen avain. -
product_id
tallentaa tuotteen tunnistavan tuotetunnuksen. -
valid_from
tallentaa voimaantulopäivän, josta alkaen listahinta on voimassa. -
list_price
tallentaa tuotteen listahinnan.
seuraavat INSERT
lausekkeet lisäävät joitakin rivejä product_prices
taulukkoon:
Code language: SQL (Structured Query Language) (sql)
kuten näet, hinta tuotteen tunnus muuttuu. Jos haluat löytää erot jokaisen myöhemmän muutoksen välillä, sinun täytyy verrata kahta peräkkäistä riviä.
oletamme, että id
sarakkeessa ei ole aukkoa ja listahinta, jonka aikaisempi on voimassa päivästä alkaen, lisätään ennen listahintaa, joka on myöhemmin voimassa päivästä, seuraavassa kyselyssä verrataan hintoja tuotteen tunnisteen jokaisen muutoksen välillä100
:
Code language: SQL (Structured Query Language) (sql)
tässä kyselyssä käytettiin itseliimautuvaa, joka liittää product_prices
taulukon itseensä. Seuraava join predikaatti mahdollistaa nykyisen rivin edellisen rivin kanssa.
Code language: SQL (Structured Query Language) (sql)
nyt pitäisi osata vertailla kahta riviä samassa taulukossa Oraclessa.