Oblikovanje poizvedbe

Pogled Oblikovanje poizvedbe omogo─Źa ustvarjanje in urejanje poizvedbe zbirke podatkov.

Za dostop do tega ukaza ...

V oknu datoteke zbirke podatkov kliknite ikono Poizvedbe, nato izberite Uredi ÔÇô Uredi.


Ikona opombe

Ve─Źina zbirk podatkov uporablja poizvedbe za filtriranje ali razvr┼í─Źanje tabel zbirke podatkov za prikaz zapisov. Pogledi omogo─Źajo enako mero funkcionalnosti kot poizvedbe, vendar na strani stre┼żnika. ─îe se va┼ía zbirka podatkov nahaja na stre┼żniku, ki podpira poglede, lahko uporabite te poglede za filtriranje zapisov na stre┼żniku in tako skraj┼íate ─Źas izpisovanja.


Ikona opombe

─îe izberete ukaz Ustvari pogled v zavihku Tabele dokumenta zbirke podatkov, vidite okno Oblikovanje pogleda, ki je podobno oknu Oblikovanje poizvedbe in je opisano tukaj.


Postavitev okna Oblikovanje poizvedbe je shranjena z ustvarjenim povpra┼íevanjem, z ustvarjenim pogledom pa je ni mogo─Źe shraniti.

Oblikovalni pogled

Za oblikovanje poizvedbe kliknite ikono Poizvedbe v dokumentu zbirke podatkov, zatem kliknite Ustvari poizvedbo v oblikovalnem pogledu.

Spodnje podokno okna Pogleda oblikovanja je tam, kjer dolo─Źite poizvedbo. ─îe ┼żelite definirati poizvedbo, dolo─Źite imena polj zbirke podatkov, ki bodo vklju─Źena, in pogoje za prikaz polj. Za prerazporeditev stolpcev v spodnjem podoknu Oblikovanja pogleda povlecite glavo stolpca na novo mesto ali pa izberite stolpec in pritisnite tipki +smerna tipka.

Na vrhu poizvedbe okna Oblikovalni pogled so prikazane ikone vrstice Oblikovanje poizvedbe in vrstice Oblikovanje.

─îe ┼żelite preizkusiti poizvedbo, dvokliknite ime poizvedbe v dokumentu zbirke podatkov. Rezultat poizvedbe je prikazan v tabeli, ki je podobna Pogledu vira podatkov. Upo┼ítevajte, da je prikazana tabela le za─Źasna.

Tipke v Pogledu oblikovanja poizvedb

Tipka

Funkcija

F4

Predogled

F5

Za┼żeni poizvedbo

F7

Dodaj tabelo ali poizvedbo


Prebrskaj

Ko boste prvi─Ź odprli oblikovanje poizvedbe, se odpre pogovorno okno, v katerem morate najprej izbrati tabelo, ki bo osnova za poizvedbo.

Dvokliknite polja, ki jih s tem dodate poizvedbi. Povlecite in spustite, ─Źe ┼żelite definirati relacije.

Ikona opombe

Med oblikovanjem poizvedbe ne morete spreminjati izbranih tabel.


Odstrani tabele

─îe ┼żelite tabelo odstraniti iz Oblikovalnega pogleda, kliknite zgornjo obrobo okna tabele in odprite kontekstni meni. Uporabite lahko ukaz Izbri┼íi in tako odstranite tabelo iz Oblikovalnega pogleda. Druga mo┼żnost je, da pritisnete brisalko.

Premakni tabelo in spremeni velikost tabele

Spremenite lahko velikost in razporedite tabele glede na svoje nastavitve. ─îe ┼żelite premakniti tabele, povlecite njihov zgornji rob do ┼żelenega mesta. Pove─Źajte ali zmanj┼íajte prikazano velikost tabele, tako da se z mi┼íkinim kazalcem postavite na rob ali v kot tabele in ga povle─Źete, dokler ne dose┼że ┼żelene velikosti.

Relacije med tabelami

─îe obstajajo podatkovne relacije med imenom polja v eni tabeli in med imenom polja v drugi tabeli, lahko uporabite te relacije za svojo poizvedbo.

─îe imate npr. preglednico za artikle, ki jih dolo─Źa ┼ítevilka artikla, in preglednico za stranke, kamor zapisujete vse artikle, ki jih stranka naro─Źi, in pri tem uporabite ustrezne ┼ítevilke artikla, potem obstaja relacija med podatkovnima poljema ┬╗┼ítevilka artikla┬ź. ─îe zdaj ┼żelite ustvariti poizvedbo, ki vrne vse artikle, ki jih je stranka naro─Źila, morate dobiti podatke iz dveh preglednic. ─îe ┼żelite to storiti, morate LibreOffice povedati, kak┼íen odnos obstaja med podatki v teh dveh preglednicah.

To storite na slede─Ź na─Źin: kliknite ime polja v tabeli (npr. ime polja ┬╗┼átevilka elementa┬ź iz tabele Stranke), zadr┼żite gumb mi┼íke in nato povlecite ime polja do imena polja druge tabele (┬╗┼átevilka elementa┬ź iz tabele Element). Ko spustite gumb mi┼íke, se prika┼że ─Źrta, ki povezuje ti polji iz oken. Ustrezni pogoj, da mora biti vsebina teh polj identi─Źna, se vstavi v poizvedbo SQL.

Ustvarjanje poizvedbe, ki temelji na ve─Ź sorodnih delovnih listih, je mo┼żno le, ─Źe uporabljate LibreOffice kot vmesnik za relacijsko zbirko podatkov.

Ikona opombe

V poizvedbi ne morete dostopati do tabel iz razli─Źnih zbirk podatkov. Poizvedbe, ki vklju─Źujejo ve─Ź tabel, lahko ustvarite le znotraj ene zbirke podatkov.


Dolo─Źanje vrste relacije

─îe dvokliknete ─Źrto, ki povezuje dve povezani polji ali prikli─Źete menijski ukaz Vstavi ÔÇô Nova relacija, lahko dolo─Źite vrsto povezave v pogovornem oknu Relacije.

Lahko tudi pritiskate tabulator, dokler ni izbrana ─Źrta, in potem pritisnete tipki dvigalka+F10 za prikaz kontekstnega menija, kjer izberete ukaz Uredi. Nekatere zbirke podatkov podpirajo le podmno┼żico mo┼żnih vrst spojev.

Brisanje relacij

─îe ┼żelite izbrisati relacijo med dvema tabelama, kliknite povezovalno ─Źrto in nato pritisnite brisalko.

Druga mo┼żnost je, da izbri┼íete posamezne vnose v Polja, ki so vklju─Źena v pogovornem oknu Relacije. Ali pa pritisnite tabulator in ga ne izpustite, dokler ni poudarjeno prikazan povezovalni vektor, nato pritisnite tipki dvigalka+F10, da odprete kontekstni meni, in izberite ukaz Izbri┼íi.

Dolo─Źanje poizvedbe

Izberite pogoje, da definirate poizvedbo. Vsak stolpec oblikovalne tabele sprejme podatkovno polje za poizvedbo. Pogoji v eni vrstici so povezani z logi─Źnim AND.

Dolo─Źitev imen polj

Najprej izberite vsa imena polj iz tabel, ki jih ┼żelite dodati poizvedbi. To lahko storite bodisi s povleci in spusti, bodisi z dvoklikom imena polja v oknu tabele. Z metodo povleci in spusti uporabite mi┼íko, da povle─Źete ime polja iz okna tabele v spodnje obmo─Źje okna oblikovanja poizvedbe. Ko storite to, se lahko odlo─Źite, kateremu stolpcu v oknu oblikovanja poizvedbe boste dodali polje. Ime polja lahko izberete tudi z dvoklikom. Tako bo dodan naslednjemu prostemu stolpcu v oknu oblikovanja poizvedbe.

Brisanje imen polj

─îe ┼żelite odstraniti ime polja iz poizvedbe, kliknite glavo stolpca polja in izberite ukaz Izbri┼íi v kontekstnem meniju stolpca.

Shranjevanje poizvedbe

─îe ┼żelite shraniti poizvedbo, uporabite ikono Shrani v standardni vrstici. Vidite pogovorno okno, ki povpra┼ía za vnos imena poizvedbe. ─îe zbirka podatkov podpira sheme, lahko vnesete tudi shemo.

Shema

Vnesite ime sheme, ki je dodeljena poizvedbi ali pogledu tabele.

Ime poizvedbe ali ime pogleda tabele

Vnesite ime poizvedbe ali pogleda tabele.

Filtriranje podatkov

─îe ┼żelite filtrirati podatke za poizvedbo, nastavite ┼żelene pogoje v spodnjem obmo─Źju okna oblikovanja poizvedbe. Na voljo so naslednje mo┼żnosti:

Polje

Vnesite ime podatkovnega polja, na katerega se sklicuje poizvedba. Vse nastavitve v vrsticah mo┼żnosti filtra se nana┼íajo na to polje. ─îe tukaj aktivirate celico s klikom mi┼íke, boste zagledali pu┼í─Źi─Źni gumb, ki vam omogo─Źa izbor polja. Mo┼żnost ┬╗Ime tabele.*┬ź izbere vsa podatkovna polja, kar pomeni, da bodo vsi navedeni pogoji veljali za vsa polja tabele.

Vzdevek

Dolo─Źa vzdevek. Ta vzdevek bo naveden v poizvedbi namesto imena polja, kar omogo─Źi rabo uporabni┼íko dolo─Źenih oznak stolpcev. ─îe ima podatkovno polje npr. ime StDl, namesto tega imena pa bi raje videli, da se v poizvedbi pojavi ime StDela, kot vzdevek vstavite StDela.

V izjavi SQL so vzdevki definirani na slede─Ź na─Źin:

SELECT stolpec AS vzdevek FROM tabela.

Primer:

SELECT "StD" AS "StDela" FROM "Deli"

Tabela

Ustrezna tabela zbirke podatkov izbranega podatkovnega polja je navedena tukaj. ─îe aktivirate to celico s klikom mi┼íke, se bo pojavila pu┼í─Źica, ki vam omogo─Źa, da izberete drugo tabelo za trenutno poizvedbo.

Razvrsti

─îe kliknete to celico, lahko izbirate med mo┼żnostmi razvr┼í─Źanja: nara┼í─Źajo─Źe, padajo─Źe in nerazvr┼í─Źeno. Polja z besedilom bodo razvr┼í─Źena po abecednem redu, ┼ítevilska polja pa po ┼ítevil─Źnem. Pri ve─Źini zbirk podatkov lahko skrbniki nastavijo mo┼żnosti razvr┼í─Źanja na ravni zbirke podatkov.

Vidno

─îe za podatkovno polje ozna─Źite lastnost Vidno, bo to polje prikazano v kon─Źni poizvedbi. ─îe uporabljate podatkovno polje samo za dolo─Źitev pogoja ali izvedbo izra─Źuna, ga ni potrebno prikazati.

Pogoji

Dolo─Źa prvi pogoj, po katerem bo filtrirana vsebina podatkovnih polj.

ali

Tukaj lahko vstavite dodaten pogoj za filtriranje, v vsaki vrstici enega. Ve─Źkratni pogoji v enem stolpcu bodo povezani z logi─Źnim ALi (OR).

─îe ┼żelite vstaviti filter na osnovi funkcije, lahko uporabite tudi kontekstni meni glave vrstic v spodnjem obmo─Źju okna oblikovanja poizvedbe:

Funkcije

Funkcije, ki jih je mo┼żno tukaj izvesti, so odvisne od ponujenih v pogonu zbirke podatkov.

─îe delate z vdelano zbirko podatkov HSQL, vam seznamsko polje v vrstici Funkcija ponuja naslednje mo┼żnosti:

Mo┼żnost

SQL

U─Źinek

Brez funkcije

Nobena funkcija se ne bo izvedla.

Povpre─Źje

AVG

Izra─Źuna aritmeti─Źno sredino polja.

Števec

COUNT

Dolo─Źi ┼ítevilo zapisov v tabeli. Prazna polja so lahko v┼íteta (a) ali pa ne (b).

a) COUNT(*): Zvezdica je argument za preštevanje vseh zapisov v tabeli.

b) COUNT(stolpec): Če kot argument navedete ime polja, bodo prešteti samo zapisi tistih polj, v katerih podano ime polja vsebuje neko vrednost. Polja z vrednostjo Null (t.j. prazna polja, ki ne vsebujejo besedilne ali številske vrednosti) ne štejejo.

Najve─Ź

MAX

Ugotovi najvišjo vrednost zapisa za to polje.

Najmanj

MIN

Ugotovi najni┼żjo vrednost zapisa za to polje.

Vsota

SUM

Izra─Źuna vsoto vrednosti zapisov povezanih polj.

Zdru┼żi

GROUP BY

Skupine vr┼íijo poizvedbe podatkov glede na ime izbranega polja. Funkcije se izvajajo glede na izbrane skupine. V SQL ta mo┼żnost ustreza stavku GROUP BY. ─îe se doda pogoj, se ta vnos pojavi v izjavi SQL kot HAVING.


Klice funkcij lahko vnesete tudi neposredno v izjavo SQL. Skladnja je:

SELECT FUNCTION(stolpec) FROM tabela.

Klic funkcije za izra─Źun vsote v SQL je npr.:

SELECT SUM("Cena") FROM "Artikel".

Z izjemo funkcije Zdru┼żi so zgornje funkcije t.i. agregatne funkcije. To so funkcije, ki izra─Źunajo podatke za izdelavo povzetkov iz rezultatov. Dodatne funkcije, ki niso navedene v seznamskem polju, so tudi mo┼żne. To je odvisno od dejanskega sistema zbirke podatkov, ki ga uporabljate, in od trenutnega funkcionalnosti gonilnika Base za povezavo s tem sistemom zbirke podatkov.

─îe ┼żelite uporabiti druge funkcije, ki niso na voljo v seznamskem polju, jih morate vnesti ro─Źno v Polje.

Vzdevke lahko dodelite tudi klicem funkcij. ─îe poizvedbe ne ┼żelite prikazati v glavi stolpca, vnesite ┼żeleno nadomestno ime pod Vzdevek.

Ustrezna funkcija v SQL-izjavi se glasi:

SELECT FUNCTION() AS vzdevek FROM tabela

Primer:

SELECT COUNT(*) AS števec FROM "Element"

Ikona opombe

─îe za┼żenete to funkcijo, ne morete vstaviti nobenih dodatnih stolpcev za poizvedbo razen argumenta za funkcijo ┬╗Group┬ź.


Primeri

V naslednjem primeru se poizvedba izvaja v dveh tabelah: tabeli ┬╗Element┬ź s poljem ┬╗┼át_elementa┬ź in tabeli ┬╗Dobavitelji┬ź s poljem ┬╗Ime_dobavitelja┬ź. Poleg tega imata obe tabeli skupno ime polja ┬╗┼át_dobavitelja┬ź.

Da bi ustvarili poizvedbo, ki vsebuje vse dobavitelje, ki dostavljajo ve─Ź kot tri elemente, so potrebni naslednji koraki.

  1. Tabeli ┬╗Element┬ź in ┬╗Dobavitelji┬ź vstavite v oblikovanje poizvedbe.

  2. Pove┼żite polji ┬╗┼át_dobavitelja┬ź teh tabel, ─Źe ┼íe ne obstaja tovrstna relacija.

  3. Dvokliknite polje ┬╗┼át_elementa┬ź iz tabele ┬╗Element┬ź. Prika┼żite vrstico Funkcija, tako da uporabite kontekstni meni in izberete funkcijo Pre┼ítej.

  4. Vstavite >3 kot pogoj in izklju─Źite polje Vidno.

  5. Dvokliknite polje ┬╗Ime_dobavitelja┬ź v tabeli ┬╗Dobavitelji┬ź in izberite funkcijo Zdru┼żi.

  6. Za┼żenite poizvedbo.

─îe polji ┬╗cena┬ź (za posamezno ceno artikla) in ┬╗┼át_dobavitelja┬ź (za dobavitelja artikla) v tabeli ┬╗Element┬ź obstajata, lahko dobite povpre─Źno ceno elementa, ki ga ponuja dobavitelj, z naslednjo poizvedbo:

  1. Tabelo ┬╗Element┬ź vstavite v oblikovanje poizvedbe.

  2. Dvokliknite polji ┬╗Cena┬ź in ┬╗┼át_dobavitelja┬ź.

  3. Omogo─Źite vrstico Funkcija in izberite funkcijo Povpre─Źje iz polja ┬╗Cena┬ź.

  4. Lahko vstavite tudi ┬╗Povpre─Źje┬ź v vrstici za ime vzdevka (brez narekovajev).

  5. Izberite Zdru┼żi za polje ┬╗┼át_dobavitelja┬ź.

  6. Za┼żenite poizvedbo.

Na voljo so naslednji ukazi in simboli kontekstnega menija:

Funkcije

Poka┼że ali skrije vrstico za izbor funkcij.

Ime tabele

Poka┼że ali skrije vrstico za ime tabele.

Ime vzdevka

Poka┼że ali skrije vrstico za ime vzdevka.

Razli─Źne vrednosti

S poizvedbo prikli─Źe samo razli─Źne vrednosti. To velja za zapise, ki vsebujejo podatke, ki se pojavijo ve─Źkrat v izbranih poljih. ─îe je ukaz Razli─Źne vrednosti aktiviran, poizvedba vrne samo en zapis (DISTINCT), v nasprotnem primeru vrne vse zapise, ki ustrezajo pogojem poizvedbe (ALL).

─îe se npr. ime ┬╗Kova─Ź┬ź pojavi ve─Źkrat v va┼íi zbirki naslovov, lahko izberete ukaz Razli─Źne vrednosti in s tem v poizvedbi dolo─Źite, da se bo ime ┬╗Kova─Ź┬ź pojavilo samo enkrat.

Kombinacija vrednosti iz vseh polj za poizvedbo, ki vklju─Źuje ve─Ź polj, mora biti edinstvena, tako da se rezultat lahko oblikuje iz posameznega zapisa. Recimo, da so v va┼íem adresarju enkrat ┬╗Novak v Kranju┬ź in dvakrat ┬╗Novak v Kopru┬╗. Z ukazom Razli─Źne vrednosti bo poizvedba uporabila polji ┬╗priimek┬ź in ┬╗mesto┬ź ter vrnila kot rezultat poizvedbe enkrat ┬╗Novak v Kranju┬ź in enkrat ┬╗Novak v Kopru┬ź.

V jeziku SQL ta ukaz ustreza predikatu DISTINCT.

Meja

Omogo─Źa omejitev najve─Źjega ┼ítevila zapisov, ki jih vrne poizvedba.

─îe ste dodali Limit (angl. meja), boste dobili najve─Ź toliko vrstic, kot ste jih navedli s ┼ítevilom. Sicer boste videli vse zapise, ki ustrezajo pogojem poizvedbe.

Oblikovanje filtrirnih pogojev

Kadar oblikujete filtrirne pogoje, so vam na voljo razli─Źni operatorji in ukazi. Ne glede na relacijski operator obstajajo dolo─Źeni SQL-ukazi, ki izvr┼íujejo poizvedbe za vsebino polj zbirke podatkov. ─îe uporabite te ukaze v skladnji LibreOffice, LibreOffice samodejno pretvori le-te v ustrezno skladnjo SQL prek notranjega raz─Źlenjevalnika. SQL-ukaz lahko vnesete tudi neposredno in obidete notranji raz─Źlenjevalnik. Naslednje tabele podajajo pregled operatorjev in ukazov:

Operator

Pomen

Pogoj je izpolnjen, ─Źe ...

=

enako

... je vsebina polja enaka ozna─Źenemu izrazu.

Operator = ne bo prikazan v poizvedbenih poljih. ─îe vnesete vrednost brez operatorja, bo samodejno uporabljen operator =.

<>

ni enako

... vsebina polja ne ustreza dolo─Źenemu izrazu.

>

ve─Źje kot

... je vsebina polja ve─Źja kot navedeni izraz.

<

manjše kot

... je vsebina polja manjša kot navedeni izraz.

>=

ve─Źje ali enako

... je vsebina polja ve─Źja kot ali enaka dolo─Źenemu izrazu.

<=

manjše ali enako

... je vsebina polja manj┼ía kot ali enaka dolo─Źenemu izrazu.


ukaz LibreOffice

SQL-ukaz

Pomen

Pogoj je izpolnjen, ─Źe ...

IS EMPTY

IS NULL

je null

... polje ne vsebuje podatkov. Za polja Da/Ne s tremi mo┼żnimi stanji ta ukaz samodejno izvr┼íuje poizvedbe nedolo─Źenega stanja (niti Da niti Ne).

IS NOT EMPTY

IS NOT NULL

ni prazno

... polje ni prazno, vsebuje podatke.

LIKE

Ograda (*) za poljubno število znakov

Ograda (?) za natanko en znak

LIKE

Ograda (%) za poljubno število znakov

Ograda (_) za natanko en znak

je element

... podatkovno polje mora vsebovati ozna─Źen iskalni niz v podanem zaporedju. Polo┼żaj ograde (*) ozna─Źuje, ali se iskani izraz (x) pojavi na za─Źetku (x*), na koncu (*x) ali znotraj vsebine polja (*x*). Namesto znane ograde datote─Źnega sistema (*) lahko v vmesniku LibreOffice kot ogrado v SQL-poizvedbe vnesete znak SQL (%).

Ogradi (*) in (%) veljata za poljubno ┼ítevilo znakov. Vpra┼íaj (?) v vmesniku LibreOffice in pod─Źrtaj (_) v SQL-poizvedbah se uporabljata za predstavitev natanko enega znaka.

NOT LIKE

NOT LIKE

Ni element

... polje ne vsebuje podatkov z navedenim izrazom.

BETWEEN x AND y

BETWEEN x AND y

se nahaja v intervalu [x,y]

... polje vsebuje podatkovno vrednost, ki le┼żi med vrednostma x in y.

NOT BETWEEN x AND y

NOT BETWEEN x AND y

Ne sodi v interval [x,y]

... polje vsebuje podatkovno vrednost, ki ne le┼żi med vrednostma x in y.

IN (a; b; c...)

Zapomnite si, da na vseh seznamih vrednosti podpi─Źja slu┼żijo kot lo─Źilo!

IN (a, b, c...)

Vsebuje a, b, c ...

... ime polja vsebuje enega izmed navedenih izrazov a, b, c, ... Navedeno je lahko poljubno ┼ítevilo izrazov in rezultat poizvedbe je dolo─Źen z logi─Źnim operatorjem OR (ali). Izrazi a, b, c ... so lahko ┼ítevilke ali znaki.

NOT IN (a; b; c...)

NOT IN (a, b, c...)

Ne vsebuje a, b, c ...

... polje ne vsebuje nobenega izmed dolo─Źenih izrazov a, b, c, ...

= TRUE

= TRUE

Ima vrednost True (velja).

... ime polja ima vrednost True (velja).

= FALSE

= FALSE

Ima vrednost False (ne velja).

... podatkovna vrednost polja je False (ne velja).


Primeri

='Ms.'

Vrne imena polj z vsebino polja ┬╗Ga.┬ź

<'2001-01-10'

Vrne datume pred 10. januarjem 2001

LIKE 'g?ve'

Vrne zapise z vsebino polja, kot je ┬╗gobe┬ź in ┬╗grbe┬ź.

LIKE 'S*'

Vrne zapise z vsebinami polj, kot je ┬╗Slovenija┬ź.

BETWEEN 10 AND 20

Vrne zapise z vsebino polja med vrednostma 10 in 20 (polja so lahko polja z besedilom ali številska polja).

IN (1; 3; 5; 7)

Vrne zapise z vrednostmi 1, 3, 5, 7. ─îe ime polja vsebuje ┼ítevilko elementa, lahko npr. ustvarite poizvedbo, ki vrne element z dolo─Źeno ┼ítevilko.

NOT IN ('Smith')

Vrne zapise, ki ne vsebujejo ┬╗Kova─Ź┬ź.


Ube┼żno zaporedje za Like (kot): {escape 'ube┼żni-znak'}

Primer: select * from element where ImeElementa like 'Ta *%' {escape '*'}

Primer vrne vse vnose, kjer se ime elementa za─Źne s 'Ta *'. To pomeni tudi, da lahko i┼í─Źete tudi znake, ki bi jih druga─Źe tolma─Źili kot ograde, kot so *, ?, _, % ali pika.

Ube┼żno zaporedje za Outer Join (zunanji spoj): {oj outer-join}

Primer: select Artikel.* from {oj element LEFT OUTER JOIN naro─Źila ON element.no=naro─Źila.ANR}

Poizvedovanje v poljih z besedili

─îe ┼żelite izvr┼íiti poizvedbo vsebine besedilnega polja morate postaviti izraz v enojna narekovaja. Razlika med velikimi ─Źrkami in malimi ─Źrkami je odvisna od vrste uporabljene zbirke podatkov. LIKE po definiciji ne razlikuje velikih in malih ─Źrk (─Źeprav nekatere zbirke podatkov tega ne interpretirajo tako strogo).

Poizvedovanje v podatkovnih poljih

Datumska polja so predstavljena kot #Datum#, da jih jasno prepoznate kot datume. Konstante datuma, ─Źasa in datuma/─Źasa so lahko v privzeti skladnji SQL2 ali ube┼żni skladnji SQL.

Element vrste Datum

Ube┼żna skladnja SQL #1 ÔÇô morda je zastarela

Ube┼żna skladnja SQL #2

Skladnja SQL2

Datum

{D'YYYY-MM-DD'}

{d 'YYYY-MM-DD'}

'YYYY-MM-DD'

─îas

{D'HH:MM:SS'}

{t 'HH:MI:SS[.SS]'}

'HH:MI:SS[.SS]'

Datum s ─Źasom

{D'YYYY-MM-DD HH:MM:SS'}

{ts 'YYYY-MM-DD HH:MI:SS[.SS]'}

'YYYY-MM-DD HH:MI:SS[.SS]'


Primer: select {d '1999-12-31'} from svet.leta

Primer: select * from mojatabela where leta='1999-12-31'

Vsi datumski izrazi (datumski nizi) morajo biti v enojnih narekovajih (podrobnosti si oglejte v referen─Źnih virih za dolo─Źeno zbirko podatkov in konektor, ki ju uporabljate).

Poizvedovanje v poljih Da/Ne

Za izvrševanje poizvedb po poljih Da/Ne uporabite naslednjo skladnjo za tabele dBASE:

Stanje

Pogoji poizvedbe

Primer

Da

Za tabele dBASE: ni enako nobeni podani vrednosti

=1 vrne vse zapise, kjer ima polje Da/Ne stanje ┬╗Da┬ź ali ┬╗Ne┬ź (izbrano v ─Źrni).

Ne

.

=0 vrne vse zapise, za katere ima polje Da/Ne stanje ┬╗Da┬ź ali ┬╗Ne┬ź (ni izbora).

Null

IS NULL

IS NULL vrne vse zapise, za katere polje Da/Ne nima nobenega od stanj Da ali Ne (izbrano v sivi).


Ikona opombe

Skladnja je odvisna od vrste uporabljene zbirke podatkov. Upo┼ítevajte tudi, da lahko polja Da/Ne definirate razli─Źno (samo dve stanji namesto treh).


Poizvedbe parametra

Poizvedbe parametra uporabnikom omogo─Źajo vnos vrednosti med izvajanjem. Te vrednosti se uporabljajo s pogoji za izbor zapisov, ki bodo prikazani. Vsaka tak┼ína vrednost je povezana z imenom parametra, po katerem je med izvedbo poizvedbe uporabnik povpra┼ían.

Imena parametrov predhaja dvopi─Źje tako v pogledu oblikovanja kot v SQL-pogledu poizvedbe. To lahko uporabite kadar koli se lahko prika┼że vrednost. ─îe naj se ista vrednost pojavi ve─Źkrat v poizvedbi, se uporablja isto ime parametra.

Enostaven primer: ko uporabnik vnese vrednost, za katero i┼í─Źe enakost, enostavno vnese ime parametra z njegovim prehajajo─Źim dvopi─Źjem v vrstico Pogoj. V na─Źinu SQL je slednje treba vnesti kot WHERE "Polje" = :Ime_parametra

Ikona opozorila

Imena parametrov ne smejo vsebovati znakov <presledek>`!"$%^*()+={}[]@'~#<>?/,. Prav tako ne smejo biti enaka imenom polj ali rezerviranim besedam za SQL. Lahko so enaka vzdevkom.


Ikona namiga

Uporabna konstrukcija za izbiranje zapisov glede na podlagi delov besedila iz vsebine besedilnih polj je dodajanje skritega stolpca s pogojem "LIKE '%' || :Del_polja || '%'". Tako izberete zapise z natan─Źnim ujemanjem. ─îe ne ┼żelite razlikovati med velikimi in malimi ─Źrkami, je mo┼żna re┼íitev s poljem LOWER (Ime_polja) in pogojem LIKE LOWER ( '%' || :Del_polja || '%' ). Pazite na presledke v pogoju; ─Źe jih izpustite, bo raz─Źlenjevalnik SQL interpretiral celoten pogoj kot iskani niz. V SQL-na─Źinu bi to zapisali tako: LOWER ( "Ime_polja" ) LIKE LOWER ( '%' || :Del_polja || '%' ).


Poizvedbe parametra se uporabljajo tudi kot vir podatkov za podobrazce, ki omogo─Źajo uporabniku omejiti prikazane zapise.

Vnos parametra

Pogovorno okno Vnos parametra vas povpraša po vnosu vrednosti parametrov. Vnesite vrednost za vsako spremenljivko v poizvedbi in potrdite, tako da kliknete V redu ali pritisnete vnašalko.

Vrednosti, ki jih vnese uporabnik, so lahko sestavljene iz poljubnega znaka, ki je dovoljen za SQL za relevanten pogoj; to je lahko odvisno od sistema zbirke podatkov.

Ikona namiga

Uporabnik lahko uporabi nadomestne znaka SQL ┬╗%┬ź (poljuben niz) in ┬╗_┬ź (poljuben znak) kot dela vrednosti za pridobivanje zapisov s kompleksnej┼íimi pogoji.


SQL-na─Źin

SQL pomeni ┬╗Structured Query Language┬ź (jezik za strukturirano poizvedovanje) in opisuje navodila za posodabljanje in upravljanje relacijskih zbirk podatkov.

V LibreOffice za ve─Źino poizvedb ne potrebujete nikakr┼ínega predznanja o SQL, saj vam ni treba vnesti kode SQL. ─îe ustvarite poizvedbo z oblikovalcem poizvedbe, LibreOffice samodejno pretvori va┼ía navodila v ustrezno skladnjo SQL. ─îe s pomo─Źjo gumba Vklju─Źi/izklju─Źi oblikovalni pogled preidete na pogled SQL, lahko vidite ukaze SQL za poizvedbo, ki je ┼że bila ustvarjena.

Svojo poizvedbo lahko oblikujete neposredno v kodi SQL. Vendar upoštevajte, da je posebna skladnja odvisna od sistema zbirk podatkov, ki ga uporabljate.

─îe ro─Źno vnesete kodo SQL, lahko ustvarite poizvedbe, zna─Źilne za SQL, ki jih grafi─Źni vmesnik v Oblikovanju poizvedbe ne podpira. Te poizvedbe morajo biti izvedene v izvirnem na─Źinu SQL.

Ko kliknete ikono Neposredno za┼żeni ukaz SQL v SQL-pogledu, lahko ustvarite poizvedbo, ki se ne obdela v LibreOffice, ampak se po┼ílje neposredno mehanizmu zbirke podatkov.

Podprite nas!