7.1 Návrhové zobrazenie dotazu Ovládanie návrhového zobrazenia, ktoré je jedným z možností zobrazenia dotazu, je nevyhnutné pri tvorbe zložitejších dotazov, pretože v ňom môžeme definovať akýkoľvek dotaz do najmenších podrobností. Umožňuje zobrazovať položky tabuliek, zostavovať výrazy, vytvárať makro nad dotazmi. Spôsoby zobrazenia dotazov návrhové zobrazenie umožňujúce editovanie dotazu zobrazenie dátového listu, teda výpis záznamov dotazu v tvare tabuľky zobrazenie SQL vybraný dotaz definovaný príkazmi jazyka SQL Postup pri tvorbe dotazu v návrhovom zobrazení si ilustrujeme ho na konkrétnom príklade. Príklad V návrhovom zobrazení vytvorme dotaz, ktorý zobrazí polia NázevVýrobku, JednotkováCena a JednotkyNaSklade z tabuľky Výrobky. Uložme dotaz ako VýrobkyNaSklade. Upravme Dotaz tak, aby sa zobrazovali jednotky s jednotkovou cenou vyššou ako 1000 Kč. Riešenie Budeme postupovať podľa snímok obrazoviek. 1
Postup, ako zobrazujeme potrebné polia Vybrali sme 3 polia, NázevVýrobku, JednotkováCena a JednotkyNaSklade z tabuľky Výrobky. Teraz stačí dotaz buď spustiť, alebo prepnúť na zobrazenie dátového listu. Podľa zadania máme zobraziť len tie výrobky, ktoré majú jednotkovú cenu vyššiu ako 1000 Kč. 2
Po upravení dotazu, dotaz spustíme tlačidlom. 7.2 Dotaz s výpočtovým poľom Ako postupovať pri tvorbe dotazu, v ktorom je definované výpočtové pole? Ukážeme si to na príklade. Príklad Upravme dotaz VýrobkyNaSklade z predchádzajúceho príkladu tak aby sme zistili cenu jednotlivých výrobkov na sklade. Teda chceme vypočítať pre každý záznam hodnotu JednotkováCena krát JednotkyNaSklade. Nové pole nazveme CenaTovaru a dotaz uložíme. Riešenie Otvoríme dotaz VýrobkyNaSklade v návrhovom zobrazení. Kliknime do riadka Pole v prvom prázdnom stĺpci. Tlačidlom obrazoviek. Zostaviť zobrazíme okno Tvorca výrazov. Postupujeme ďalej podľa 3
Výsledný tvar dotazu VyrobkyNaSklade. V návrhovom zobrazení je pre výpočtové polia vhodné definovať formát a vlastnosti zobrazenia: Zobraziť / Vlastnosti. 7.3 Dotaz s dátumom Tvorbu dotazu, ktorý zobrazuje podľa dátumu si ukážeme na konkrétnom príklade. Príklad V dotaze PrehladObjednavok, ktorý sme zostavovali v predchádzajúcej lekcii zobrazme len objednávky za mesiac október 1996. 4
Riešenie Otvoríme dotaz PrehladObjednavok v návrhovom zobrazení. V poli DatumObjednávky v riadku Kritéria dopíšeme >#30. 9. 1996# And <#1. 11. 1996# Znamienka >, < majú zvyčajný význam teda dátum má byť väčší (mladší) ako 30.9.1996 a menší (starší) ako 1.11.1996. Spojka And má význam logického operátora a súčasne. Po spustení tohto dotazu sa zobrazia len objednávky s dátumom október 1996. Používanie logických spojok. Pri zadávaní kritérií v dotazoch budeme potrebovať spojiť viacero podmienok. Na to slúžia logické spojky a operátory, ktorých význam sme sa učili na hodinách matematiky. Pre zopakovanie uveďme ich prehľad a príklady použití. Pri písaní kritérií s použitím spojok buďme ostražití, pretože výsledkom spojenia môže byť prázdna množina. Viď 2. riadok tabuľky. operand význam názov vysvetlenie príklad AND a súčasne logický súčin ak platia obidva výrazy súčasne =<6 and =>1 čísla od 1 do 6, vrátane 1 a 6 <10 and >20 žiadne číslo nespĺňa túto podmienku (menšie ako 10 a väčšie ako 20) OR alebo logický súčet platí jeden výraz alebo druhý výraz NOT neplatí negácia, zápor opačná hodnota výrazu <0 or >1 všetky čísla mimo intervalu <0,1>, vrátane krajných bodov ovocie or mlieko údaje, ktorých hodnoty sú ovocie alebo mlieko not (=<6 and =>1) všetky čísla okrem intervalu <1,6> not ( ovocie ) všetky údaje, ktoré nie sú ovocie 7.4 Úlohy na precvičenie 1. Vytvorte v databáze Northwind dotaz, ktorý vypíše polia NazovVyrobku, JednotkovúCenu a JednotkyNaSklade z tabuľky Vyrobky. Zobrazte len tie výrobky, ktorých jednotková cena presahuje limit 300 Kč. Dotaz uložte ako VyrobkyNaSklade. 2. V databáze Northwind vytvorte pomocou sprievodcu dotaz, ktorý zobrazí celkovú jednotkovú cenu všetkých výrobkov. Pri tvorbe dotazu vyberáme iba jedno pole - JednotkováCena a zvolíme si súhrnný dotaz, pri možnosti súhrnu volíme funkciu súčet. 3. V databáze Northwind zobrazte polia Firma z tabuľky Zakazníci, DátumObjednávky a Dopravné z tabuľky Objednávky. Zobrazte len tie firmy, ktoré si objednávali od 2.8.1996 do 18.8.1996 5
Zadanie 7 1. Vytvorte dotaz v databáze Knižnica, s použitím polí NazovKnihy, z tabuľky Kniha, Priezvisko z tabuľky Priatelia a PozicaneDatum z tabuľky Pozicka. Zobrazte len tie CD, ktoré boli požičané v septembri 2006. Dotaz uložte ako Pozicane0906. 2. Vytvorte dotaz pomocou sprievodcu, ktorý zobrazí celkovú cenu vašich kníh, maximálnu a minimálnu hodnotu ceny. (Súhrnný dotaz, v ktorom bude vypočítaný súčet, max a min z poľa Cena) Databázu "zazipujte do súboru zadanie7.zip a preneste na server e-learningu 6