Lekérdezéstervező

A Lekérdezéstervező nézet lehetővé teszi adatbázis-lekérdezés létrehozását és szerkesztését.

Ennek a parancsnak az eléréséhez...

In a database file window, click the Queries icon, then choose Edit - Edit.


note

A legtöbb adatbázis lekérdezéseket használ a rekordok megjelenítésére a számítógépen az adatbázistáblák szűrése és rendezése által. A nézetek ugyanazt a funkcionalitást biztosítják, mint a lekérdezések, csak kiszolgálóoldalon. Ha a használt adatbázis olyan kiszolgálón van, amely támogatja a nézeteket, használhatja a nézeteket a rekordok kiszolgálón történő szűréséhez. A megjelenítési idő ilyenkor lecsökken.


note

Ha az adatbázis-dokumentum Táblázatok lapján a Nézet létrehozása parancsot választja, akkor megjelenik a Nézetterv ablak, amely hasonlít a Lekérdezéstervező ablakra.


A Lekérdezéstervező ablak elrendezése a létrehozott lekérdezéssel tárolódik, de nem tárolható létrehozott nézettel.

A tervezőnézet

Lekérdezés létrehozásához kattintson a Lekérdezés ikonra egy adatbázis-dokumentumban, majd kattintson a Lekérdezés létrehozása a tervezőnézetben lehetőségre.

A Tervezőnézet alsó ablaktáblája az a hely, ahol meghatározza a lekérdezést. Lekérdezés létrehozásához adja meg az adatbázis mezőneveit, amelyeket a lekérdezés tartalmazni fog, valamint a feltételeket a mezők megjelenítéséhez. A Tervezőnézet alsó ablaktáblájában az oszlopok átrendezéséhez húzza át az oszlopfejlécet egy új helyre, vagy válassza ki az oszlopot és nyomja meg a és a nyílbillentyűt.

A lekérdezés Tervezőnézet ablakának tetején megjelennek a Lekérdezéstervező eszköztár és a Tervezés eszköztár ikonjai.

Ha tesztelni kívánja a lekérdezést, akkor kattintson duplán a lekérdezés nevére az adatbázis-dokumentumban. A lekérdezés eredménye az Adatforrás nézethez hasonló táblában jelenik meg. Megjegyzés: a megjelenített tábla csak ideiglenes.

Billentyűk a Lekérdezéstervező nézetben

Billentyű

Funkció

F4

Előnézet

F5

Lekérdezés futtatása

F7

Tábla vagy lekérdezés hozzáadása


Tallózás

A lekérdezéstervező első megnyitásakor megjelenik a párbeszédablak, amelyben először ki kell választania a lekérdezés alapjául szolgáló táblát.

Kattintson duplán a mezőkön a lekérdezéshez való hozzáadásukhoz. Fogd és vidd módszerrel határozza meg a kapcsolatot.

note

Lekérdezés tervezése közben nem módosíthatja a kiválasztott táblákat.


Táblák eltávolítása

A tábla Tervezőnézetből eltávolításához kattintson a táblaablak felső szegélyére, és jelenítse meg a helyi menüt. A Törlés parancs segítségével eltávolíthatja a táblát a Tervezőnézetből. Másik lehetőség a Delete billentyű megnyomása.

Tábla áthelyezése és méretének változtatása

A táblákat igényeinek megfelelően átméretezheti és elrendezheti. A táblák áthelyezéséhez húzza a felső szegélyt a kívánt helyre. Nagyítsa vagy csökkentse a tábla megjelenítési méretét: vigye az egérkurzort a szegélyre vagy a sarokra, és húzza addig a táblát, amíg el nem éri a kívánt méretet.

Táblakapcsolatok

Amennyiben adatreláció van két különböző tábla mezői között, ezeket a relációkat a lekérdezésben is használhatja.

Ha például van egy táblája a cikkszámmal azonosított cikkekhez, és egy tábla az ügyfelekhez, amelyben rögzíti az összes cikket, amelyet az ügyfél rendel a megfelelő cikkszámmal, akkor reláció van a két „cikkszám” adatmező között. Ha létre akar hozni egy lekérdezést, amely visszaadja az ügyfelek által rendelt összes cikket, akkor két táblából kell lekérnie az adatokat. Ennek végrehajtásához meg kell mondania a LibreOffice-nak, hogy mi a kapcsolat a két tábla adatai között.

Ennek végrehajtásához kattintson a mezőnévre a táblában (például az „Elemszám” mezőnév a Vásárló táblából), tartsa lenyomva az egérgombot, és húzza át a mezőnevet a másik tábla mezőnevéhez („Elemszám” az Elem táblából). Amikor elengedi az egérgombot, a két táblaablak között megjelenik a mezőket összekötő vonal. A feltétel, hogy a két mezőnév tartalmának meg kell egyeznie, bekerül az eredményül kapott SQL-lekérdezésbe.

Olyan lekérdezés létrehozása, amely több relációban lévő munkalapon alapul, csak akkor lehetséges, ha a LibreOffice-t egy relációs adatbázis előtét-felületeként használja.

note

Egy lekérdezésben nem férhet hozzá különböző adatbázisban levő táblákhoz. Több táblára vonatkozó lekérdezések csak egy adatbázison belül hozhatók létre.


A kapcsolat típusának megadása

Ha duplán kattint a két mezőt összekötő vonalra, vagy meghívja a Beszúrás - Új reláció menüparancsot, akkor a Relációk párbeszédablakban megadhatja a reláció típusát.

Megnyomhatja többször a Tab billentyűt, amíg a sort ki nem jelöli a rendszer, majd nyomja meg a Shift+F10 billentyűkombinációt a helyi menü megjelenítéséhez, és itt válassza ki a Szerkesztés parancsot. Egyes adatbázisok csak egy részhalmazát támogatják a lehetséges összekapcsolás-típusoknak.

Kapcsolatok törlése

Két táblázat közötti reláció törléséhez kattintson az összeköttetésre, és nyomja meg a Delete billentyűt.

Vagy törölje a megfelelő bejegyzéseket a Relációk párbeszédablak Érintett mezőiből. Vagy nyomja le a Tab billentyűt addig, amíg a kapcsolati vektor ki nem lesz jelölve, majd nyomja meg a Shift és F10 billentyűt a helyi menü megnyitásához, és válassza a Törlés parancsot.

A lekérdezés megadása

Válassza ki a feltételeket a lekérdezés megadásához. A tervezőtábla minden oszlopa elfogadja a lekérdezés egyik adatmezőjét. Az egy sorban lévő feltételek logikai ÉS operátorral vannak összekapcsolva.

Mezőnevek megadása

Először válassza ki lekérdezéshez adandó összes mezőnevet a táblákból. Ezt megteheti fogd és vidd módszerrel, vagy dupla kattintással egy mezőnévre a tábla ablakban. A fogd és vidd módszerrel használja az egeret egy mezőnév áthúzására a tábla ablakból a lekérdezéstervező ablak alsó részére. Eközben eldöntheti, hogy a lekérdezéstervező ablak melyik oszlopa kapja a kijelölt mezőt. A mezőnév dupla kattintással is kiválasztható. Ekkor a lekérdezéstervező ablak következő üres oszlopához kerül hozzáadásra.

Mezőnevek törlése

A mezőnév lekérdezésből eltávolításához kattintson a mező oszlopfejlécére és az oszlop helyi menüjéből válassza ki a Törlés parancsot.

A lekérdezés mentése

A Standard eszköztár Mentés ikonja segítségével mentse a lekérdezést. Megjelenik egy párbeszédablak, amelyben meg kell adni a lekérdezés nevét. Ha az adatbázis támogatja a sémákat, akkor megadhat egy sémanevet.

Séma

Adja meg a lekérdezés- vagy táblanézethez rendelni kívánt séma nevét.

A lekérdezés vagy a táblanézet neve

Írja be a lekérdezés vagy a táblanézet nevét.

Adatok szűrése

A lekérdezés adatainak szűréséhez állítsa be a kívánt feltételeket a lekérdezéstervező ablak alsó területén. Az alábbi lehetőségek állnak rendelkezésre:

Mező

Írja be a lekérdezésben hivatkozott adatmező nevét. A szűrő beállítási soraiban megadott minden beállítás erre a mezőre vonatkozik. Ha itt egy egérkattintással kijelöl egy cellát, akkor megjelenik egy nyíl gomb, ami lehetővé teszi egy mező kijelölését. A „Tábla neve.*” lehetőség az összes adatmezőt kiválasztja, így a kijelölt feltételek minden táblamezőre alkalmazva lesznek.

Álnév

Álnevet adhat meg. Ez az álnév fog szerepelni a lekérdezésben a mezőnév helyett. Így lehetővé válik egyéni oszlopcímkék alkalmazása. Ha például az adatmező a PtNo nevet viseli, amely helyett a PartNum nevet szeretné a lekérdezésben megjeleníteni, akkor adja meg a PartNum nevet álnévként.

Egy SQL-utasításban az álnevek a következő módon vannak meghatározva:

SELECT oszlopnév AS álnév FROM táblanév.

Például:

SELECT "PtNo" AS "PartNum" FROM "Parts"

Tábla

A kiválasztott adatmezőnek megfelelő adatbázistábla itt látszik. Amennyiben a cellára rákattint, egy nyíl jelenik meg, amellyel az aktuális lekérdezés egy másik tábláját is kiválaszthatja.

Rendezés

Ha a cellára kattint, a következő rendezési szempontok közül választhat: növekvő, csökkenő, illetve nem rendezett. A szövegmezők betűrend szerint (A-tól Z-ig), a számmezők numerikusan (0-tól 9-ig) kerülnek rendezésre. A legtöbb adatbázisnál az adminisztrátorok megadhatják a rendezési beállításokat.

Látható

Ha bekapcsolja egy adatmező Látható tulajdonságát, akkor az a mező látható lesz a lekérdezésben. Ha csak adatmezőt használ a feltétel kialakításához vagy számításhoz, akkor nem kell megjelenítenie.

Feltételek

Megadja az első feltételeket, amelyek szerint szűrni kell az adatmezők tartalmát.

vagy

Itt egy további szűrési feltételt adhat meg minden sorhoz. Több feltétel egy oszlopban logikai VAGY kapcsolattal lesz értelmezve.

A lekérdezéstervező ablak alsó részében a sorok fejlécének helyi menüje segítségével még egy szűrőt be lehet illeszteni függvény alapján:

Függvények

Az itt elérhető függvények az adatbázismotortól függenek.

Ha beágyazott HSQL-adatbázist kezel, akkor a Függvény sor listája az alábbi lehetőségeket biztosítja:

Beállítás

SQL

Hatás

Semmi

Nem lesz függvény végrehajtva.

Átlag

AVG

Kiszámolja egy mező számtani középértékét.

Darab

COUNT

Meghatározza a tábla rekordjainak számát. Az üres mezők beleszámolhatók (a) vagy kizárhatók (b).

a) COUNT(*): A csillag argumentum megadásával megszámolhatja a tábla összes rekordját.

b) COUNT(oszlop): Ha mezőnevet ad át argumentumként, akkor a rendszer csak azokat a mezőket számolja meg, amelyben a kérdéses mező neve tartalmaz értéket. A nullértékeket (érték nélküli üres mezők) a rendszer nem számolja.

Maximum

MAX

Meghatározza egy mező rekordjának legnagyobb értékét.

Minimum

MIN

Meghatározza egy mező rekordjának legkisebb értékét.

Összeg

SUM

Kiszámolja a társított mezők rekordértékeinek összegét.

Csoportosítás

GROUP BY

Csoportosítja a lekérdezési adatokat a kiválasztott mezőnevek alapján A függvények a megadott csoportoknak megfelelőn kerülnek végrehajtásra. SQL-ben ez a beállítás a GROUP BY záradéknak felel meg. Ha egy feltétel meg van adva, akkor ez a bejegyzés az SQL HAVING részben jelenik meg.


Függvényhívásokat közvetlenül SQL-utasítás formájában is megadhat. A szintaxis az alábbi:

SELECT FÜGGVÉNYNÉV(oszlop) FROM tábla.

Például az összeg kiszámítására szolgáló függvényhívás az SQL-nyelvben a következőképpen néz ki:

SELECT SUM("ár") FROM "cikk".

A Csoportosítás kivételével a fenti függvényeket Összesítő függvényeknek hívják. Ezek azok a függvények, amelyek számításokat végeznek az adatokon, és az eredmény összegszerű érték. További függvények is lehetségesek, amelyek nincsenek a listában. Ezek a használt adatbázismotortól és az ahhoz kapcsolódásra használt Base illesztőprogramtól függenek.

Az ebben a listamezőben nem szereplő függvények használatához be kell írni azokat a Mező alatt.

Álneveket is rendelhet a függvényhívásokhoz. Ha a lekérdezést nem szeretné megjeleníteni az oszlopfejlécben, akkor adjon meg egy helyettesítő nevet az Álnevek alatt.

Az SQL-nyelvben a megfelelő függvény a következő:

SELECT FÜGGVÉNYNÉV() AS álnév FROM tábla

Példa:

SELECT COUNT(*) AS számlálás FROM "elem"

note

Ha futtat egy ilyen függvényt, akkor csak a „Csoportosítás” függvény argumentumaként tud beszúrni további oszlopokat a lekérdezésbe.


Példák

A következő példába a lekérdezés két táblán fut végig: egy „Elem” tábla „Elemszám” mezővel és egy „Szállító” tábla „Szállító_neve” mezővel. Ezen felül mindkét tábla rendelkezik egy közös „Szállító_száma” mezővel.

A következő lépések szükségesek ahhoz, hogy olyan lekérdezést hozzon létre, amely tartalmazza az összes szállítót, aki több mint három cikket szállít:

  1. Szúrja be a „Tétel” és „Szállítók” táblákat a lekérdezéstervbe.

  2. Kapcsolja össze a két tábla „Szállító_száma” mezőjét, ha még nincs ilyen típusú kapcsolat.

  3. Kattintson duplán az „Elem” tábla „Elemszám” mezőjére. Jelenítse meg a Függvény sort a helyi menü segítségével, és válassza a Darabszám (Count) függvényt.

  4. Adja meg a >3 feltételt, és kapcsolja ki a Látható mezőt.

  5. Kattintson duplán a „Szállítók” tábla „Szállító_neve” mezőjére, és válassza a Csoport függvényt.

  6. Futtassa a lekérdezést.

Ha az „ár” (egy cikk egyedi ára) és a „Szállító_száma” (a cikk szállítójához tartozó) mező létezik az „Elem” táblában, akkor következő lekérdezéssel lekérdezheti az elem átlagos árát, amelyet a szállító biztosít:

  1. Szúrja be az „Elem” táblát a lekérdezéstervbe.

  2. Kattintson duplán az „Ár” és „Szállító_száma” mezőkre.

  3. Engedélyezze a Függvény sort, és az „Ár” mezőből válassza ki az Average (átlag) függvényt.

  4. Az „Average”-et (átlagot) az álnév sorában is megadhatja (idézőjelek nélkül).

  5. Válassza a Csoportosítást a „Szállító_száma” mezőhöz.

  6. Futtassa a lekérdezést.

A következő helyi menüparancsokat és szimbólumokat használhatja:

Függvények

Megjeleníti vagy elrejti a függvényeket tartalmazó sort.

Tábla neve

Megjeleníti vagy elrejti a tábla nevét tartalmazó sort.

Álnév

Megjeleníti vagy elrejti az álnevet tartalmazó sort.

Különböző értékek

Csak eltérő értékeket alkalmaz a lekérdezéshez. Olyan adatokat tartalmazó rekordokra érvényes, amelyek többször megjelennek a kiválasztott mezőkben. Ha a Különböző értékek parancs aktív, akkor csak egy rekordot lát a lekérdezésben (DISTINCT). Ellenkező esetben a lekérdezési feltételeknek megfelelő rekordokat látja (ALL).

Ha például a „Kovács” név többször jelenik meg a címadatbázisban, akkor kiválaszthatja a Különböző értékek parancsot annak megadásához, hogy a lekérdezés eredményében a „Kovács” név csak egyszer jelenjen meg.

Több mezőt tartalmazó lekérdezés esetén az összes mező értékei kombinációjának egyedinek kell lennie, így az eredmény kialakítható egy adott rekordból. Tegyük fel, hogy a „Kovács Szegeden” egyszer, a „Kovács Budapesten” kétszer szerepel a címjegyzékben. A Különböző értékek paranccsal a lekérdezés két mezőt használ, a „vezetéknév” és „város” mezőt, az eredményben visszaadja egyszer a „Kovács Szegeden” és egyszer a „Kovács Budapesten” értéket.

Az SQL-nyelvben ez a parancs a DISTINCT predikátumnak felel meg.

Határ

Lehetővé teszi a lekérdezés által visszaadott rekordok számának maximalizálását.

Ha felvett egy Határ szerkezetet, akkor legfeljebb a megadott számú sort kap vissza. Ellenkező esetben a keresési feltételeknek megfelelő összes rekord megjelenik.

Szűrőfeltételek kialakítása

Szűrőfeltételek kialakításakor különböző operátorok és parancsok állnak rendelkezésre A relációs operátorokon kívül SQL-specifikus parancsok is léteznek, amelyek lekérdezik az adatbázismezők tartalmát. Ha a parancsokat LibreOffice-szintaxisban használja, akkor a LibreOffice egy belső feldolgozóval automatikusan átalakítja ezeket a megfelelő SQL-szintaxisba. Az SQL-parancsokat közvetlenül is beírhatja és megkerülheti a belső feldolgozót. Az alábbi táblázatok áttekintést adnak az operátorokról és parancsokról:

Operátor

Jelentés

Feltétel kielégítve, ha ...

=

egyenlő

... a mező tartalma megegyezik a megadott kifejezéssel.

Az = operátor nem jelenik meg a lekérdezésmezőkben. Ha operátor nélkül ad meg értéket, akkor az = operátor kerül automatikusan alkalmazásra.

<>

nem egyenlő

... a mező tartalma nem egyezik meg a megadott kifejezéssel.

>

nagyobb mint

... a mező tartalma nagyobb, mint a megadott kifejezés.

<

kisebb mint

... a mező tartalma kisebb, mint a megadott kifejezés.

>=

nagyobb vagy egyenlő

... a mező tartalma nagyobb vagy egyenlő, mint a megadott kifejezés.

<=

kisebb vagy egyenlő

... a mező tartalma kisebb vagy egyenlő, mint a megadott kifejezés.


LibreOffice-parancs

SQL-parancs

Jelentés

Feltétel kielégítve, ha ...

IS EMPTY

IS NULL

null

.. a mező nem tartalmaz adatokat. Három lehetséges állapottal rendelkező Igen/Nem mezők esetén ez a parancs automatikusan lekérdezi a határozatlan állapotot (se nem Igen és se nem Nem érték).

IS NOT EMPTY

IS NOT NULL

nem üres

... a mező nem üres, azaz adatokat tartalmaz.

LIKE

(*) helykitöltő bármennyi karaktert helyettesít

(?) helykitöltő pontosan egy karaktert helyettesít

LIKE

(%) helykitöltő bármennyi karaktert helyettesít

(_) helykitöltő pontosan egy karaktert helyettesít

eleme

... az adatmezőnek, amely tartalmazza a jelzett kifejezést. A (*) helykitöltő jelzi, hogy az x kifejezés előfordul-e a mező elején (x*), a végén (*x) vagy a mezőtartalmon belül (*x*). SQL-lekérdezésekben helykitöltőként használhat % SQL-karaktert vagy a jól ismert (*) fájlrendszer-helykitöltőt a LibreOffice-felületen.

A (*) vagy a (%) helykitöltő tetszőleges számú karakter helyett állhat. A kérdőjel (?) a LibreOffice-felületen vagy az aláhúzás (_) az SQL-lekérdezésekben pontosan egy karaktert ábrázol.

NOT LIKE

NOT LIKE

Nem eleme

... a mező nem tartalmazza a megadott kifejezésre illeszkedő adatokat.

BETWEEN x AND y

BETWEEN x AND y

az [x,y] intervallumba esik

... a mező olyan adatértéket tartalmaz, amely az x és y értékek közé esik.

NOT BETWEEN x AND y

NOT BETWEEN x AND y

Nem esik az [x,y] intervallumba

... a mező olyan adatértéket tartalmaz, amely nem esik az x és y értékek közé.

IN (a; b; c...)

Ne feledje, hogy a pontosvesszők elválasztó karakterként viselkednek minden értéklistában!

IN (a, b, c...)

tartalmazza a-t, b-t, c-t...

.. a mezőnév tartalmazza a megadott a, b, c... kifejezések egyikét. Tetszőleges számú kifejezés megadható, és a lekérdezés eredményét a logikai VAGY művelet határozza meg. Az a, b, c... kifejezések számok vagy betűk lehetnek

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

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

nem tartalmazza a-t, b-t, c-t...

... a mező nem tartalmazza a megadott a, b, c... kifejezések egyikét sem.

= TRUE

= TRUE

az értéke Igaz

... a mező Igaz értéket vesz fel.

= FALSE

= FALSE

a mező értéke Hamis

... a meződ adatértéke hamisra van állítva.


Példák

='Ms.'

a „Ms.” értéket tartalmazó mezőneveket adja vissza

<'2001-01-10'

a 2001. január 10. előtti dátumokat adja vissza.

LIKE 'sz?r'

a „szár” és „szúr” értékhez hasonló tartalommal rendelkező mezőneveket adja vissza.

LIKE 'S*'

olyan rekordokat ad vissza, amelyek tartalma például „Sun”.

BETWEEN 10 AND 20

azokat a rekordokat adja vissza, amelyek mezőértéke 10 és 20 közé esik. (Az itt megadott mezők lehetnek szövegesek vagy numerikusak is).

IN (1; 3; 5; 7)

azokat a rekordokat adja vissza, amelyekben az 1, 3, 5 vagy 7 érték fordul elő. Ha a mezőnév tartalmaz egy cikkszámot, akkor például létrehozhat egy olyan lekérdezést, amely a megadott számú cikket adja vissza.

NOT IN ('Kovács')

a „Kovács”" karaktersorozatot nem tartalmazó mezőneveket adja vissza.


Like Escape-szekvencia: {escape 'kilépési karakter'}

Példa: select * from Cikk where CikkNév like 'Az *%' {escape '*'}

A példa megadja az összes bejegyzést, amelyben az elem neve az „Az *” karakterekkel kezdődik. Ez azt jelenti, hogy olyan karaktereket is kereshet, amelyek ellenkező esetben helykitöltőként kerülnének megjelenítésre, mint például a *, ?, _ , % vagy a pont.

Outer Join Escape-szekvencia: {oj outer-join}

Példa: select Cikk.* from {oj cikk LEFT OUTER JOIN rendelések ON cikk.szám=rendelések.cikkszám}

Szövegmezők lekérdezése

Szövegmező tartalmának lekérdezéséhez a kifejezéseket aposztrófok közé kell tenni. A nagybetűk és kisbetűk közötti különbségtétel a használt adatbázistól függ. A LIKE definíció szerint megkülönbözteti a kis- és nagybetűket (de néhány adatbázis nem értelmezi ezt szigorúan).

Dátummezők lekérdezése

A Dátummezők #Dátum#-ként kerülnek ábrázolásra, hogy tisztán dátumként kerüljenek azonosításra. A feltételekben használt dátum, idő, és dátum/idő állandók (literálok) lehetnek SQL Escape szintaxis típusúak vagy az alapértelmezett SQL2 típusúak.

Dátum típusú elem

SQL Escape szintaxis #1 - elavult lehet

SQL Escape szintaxis #2

SQL2 szintaxis

Dátum

{D'YYYY-MM-DD'}

{d 'YYYY-MM-DD'}

'YYYY-MM-DD'

Idő

{D'HH:MM:SS'}

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

'HH:MI:SS[.SS]'

Dátum és idő

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

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

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


Példa: select {d '1999-12-31'} from world.years

Példa: select * from mytable where years='1999-12-31'

Minden dátumkifejezést (dátumliterált) egyszeres idézőjelek közé kell tenni. (Nézze meg az adott adatbázis és a használt illesztőprogram referenciáját további részletekért.)

Igen/Nem típusú mezők lekérdezése

Igen/Nem típusú mezők lekérdezésénél használja a következő szintaxist dBASE-táblák esetén:

Állapot

Lekérdezési feltétel

Példa

Igen

dBASE-táblák esetén: nem egyenlő bármely adott értékkel

=1 visszaadja az összes rekordot, amelyben az Igen/Nem mező állapota „Igen” vagy „Be” (feketével kijelölve),

Nem

.

=0 visszaadja az összes rekordot, amelyek Igen/Nem mezője „Nem” vagy „Ki” állapotban van (nincs kijelölés).

Null

IS NULL

IS NULL azon rekordokat adja vissza, amelyeknél az Igen/Nem mező állapota sem nem Igen, sem nem Nem (szürkével kiválasztva).


note

A szintaxis a használt adatbázistól függ. Azt se feledje, hogy az Igen/Nem mezők különbözően adhatók meg (csak 2 állapottal 3 helyett).


Paraméteres lekérdezések

A paraméteres lekérdezések lehetővé teszik az értékek futásidejű megadását. Ezek az értékek a megjelenítendő rekordok kiválasztására szolgáló feltételeken belül kerülnek felhasználásra. Minden ilyen értékhez tartozik egy paraméternév, amely a felhasználó megkérdezésére kerül felhasználásra a lekérdezés futtatásakor.

A paraméterneveket pontosvessző előzi meg a lekérdezés Tervező és SQL nézeteiben is. Ez mindenütt használható, ahol érték jelenhet meg. Ha ugyanannak az értéknek többször is meg kell jelennie a lekérdezésben, akkor ugyanaz a paraméternév kerül felhasználásra.

A legegyszerűbb esetben, amikor a felhasználó megad egy értéket, amelynek az egyenlősége vizsgálatra kerül, akkor a paraméternevet a megelőző pontosvesszővel együtt kell bevinni a Feltételek sorba. Az SQL módban ezt így kell megadni: WHERE "mező" = :paraméternév

warning

A paraméternek nem tartalmazhatják a következő karaktereket: <szóköz>`!"$%^*()+={}[]@'~#<>?/,. Nem lehetnek azonosak mezőnevekkel vagy SQL foglalt szavakkal. Azonosak lehetnek álnevekkel.


tip

Hasznos módszer rekordok egy szövegmező tartalma alapján való kiválasztására egy rejtett oszlop hozzáadása a következő feltétellel: "LIKE '%' || :mező_része || '%'". Ez a pontosan illeszkedő rekordokat fogja kiválasztani. Ha kis- és nagybetűkre érzéketlen teszt szükséges, akkor megoldás lehet a LOWER (mezőnév) használata a mezőként és LIKE LOWER ( '%' || :mező_része|| '%' ) használata feltételként. Vegye észre, hogy a szóközök a feltételben fontosak, ha kimaradnak, az SQL elemző a teljes feltételt az illesztendő karakterláncként értelmezi. SQL módban ezt így kell beírni: LOWER ( "mezőnév" ) LIKE LOWER ( '%' || :mező_része || '%' ).


A paraméteres lekérdezések használhatók adatforrásként alűrlapokhoz, hogy a felhasználó korlátozhassa a megjelenített rekordokat.

Paraméter bevitele

A Paraméter bevitele ablak megkéri a felhasználót a paraméterértékek bevitelére. Írjon be egy értéket minden lekérdezésparaméterhez és erősítse meg az OK gomb vagy az Enter megnyomásával.

A felhasználó által bevitt értékek tetszőleges karakterekből állhatnak, amelyeket a vonatkozó feltételhez az SQL engedélyez, ez függhet a használt adatbázisrendszertől.

tip

A felhasználó használhatja az „%” (tetszőleges karakterlánc) vagy „_” (tetszőleges karakter) SQL helyettesítő karaktereket az érték részeként rekordok lekérdezéséhez összetettebb feltételekkel.


SQL-mód

Az SQL a „Structured Query Language (strukturált lekérdezőnyelv)” rövidítése, és utasításokat tartalmaz relációs adatbázisok frissítéséhez és adminisztrációjához.

A LibreOffice-ban a legtöbb lekérdezéshez nincs szükség SQL-ismeretekre, mert nem kell beírnia SQL-kódot. Ha a lekérdezéstervezőben hoz létre lekérdezést, akkor a LibreOffice automatikusan átalakítja az utasításokat a megfelelő SQL szintaxisra. Ha a Tervezőnézet be/ki gomb segítségével átvált SQL nézetre, akkor láthatja az előzőleg létrehozott lekérdezéshez tartozó SQL parancsokat.

A lekérdezést közvetlenül SQL-kódban is megadhatja. Jegyezze meg viszont, hogy a speciális szintaxis a használt adatbázisrendszertől függ.

Ha kézzel írja be SQL-kódot, akkor olyan SQL-specifikus lekérdezéseket is készíthet, amelyeket a Lekérdezéstervező grafikus felülete nem támogat. Ezeket a lekérdezéseket natív SQL módban kell végrehajtani.

Ha rákattint az SQL parancs közvetlen futtatása ikonra az SQL nézetben, akkor létrehozhat egy olyan lekérdezést, amelyet nem a LibreOffice hajt végre, hanem közvetlenül az adatbázis-motornak kerül elküldésre.

Támogasson minket!