Przykłady wyrae uywanych w kwerendach i filtrach Przykłady kryteriów stosowanych przy pobieraniu rekordów Zakresy wartoci (>, <, >=, <=, <> lub Between...And) > 234 Dla pola Ilo; wywietla liczby wiksze ni 234. Poka wszystko < 1200,45 Dla pola CenaJednostkowa; wywietla liczby mniejsze ni 1200,45. >= "Kowalski" Dla pola Nazwisko; wywietla wszystkie nazwiska od nazwiska Kowalski a do koca alfabetu. Between #2/2/1999# And #12/1/1999# Between '2/2/1999' And '12/1/1999' Dla pola DataZamówienia; wywietla daty od 2 lutego 1999 do 1 grudnia 1999 (ANSI-89). Dla pola DataZamówienia wywietla daty od 2 lutego 1999 do 1 grudnia 1999 (ANSI-92). Wartoci niezgodne (Not) Not "USA" Dla pola KrajOdbiorcy; wywietla zamówienia dostarczone do krajów innych ni USA. Not 2 Dla pola ID; wywietla pracowników, których ID jest róny od 2. Not T* Not T% Dla pola Nazwisko; wywietla pracowników, których nazwiska nie zaczynaj si od litery T (ANSI-89). Dla pola Nazwisko; wywietla pracowników, których nazwiska nie zaczynaj si od litery T (ANSI-92). Wartoci znajdujce si na licie (In) In("Kanada", "Wielka Brytania") In(Francja, Niemcy, Japonia) Dla pola KrajOdbiorcy; wywietla zamówienia dostarczone do Kanady lub Wielkiej Brytanii. Dla pola Kraj; wywietla pracowników mieszkajcych we Francji, Niemczech lub w Japonii. Wartoci tekstowe, pasujce lub czciowo pasujce "Londyn" "Londyn" Or "Olsztyn" >="N" Dla pola MiastoOdbiorcy; wywietla zamówienia dostarczone do Londynu. Dla pola MiastoOdbiorcy; wywietla zamówienia dostarczone do Londynu lub Olsztyna. Dla pola NazwaFirmy; wywietla zamówienia dostarczone do firm, których nazwy zaczynaj si na liter od N do Z.
Like "S*" Like "S%" Right([IDZamówienia], 2)= "99" Len([NazwaFirmy]) > Val(30) Dla pola NazwaPrzesyłki; wywietla zamówienia dostarczone do klientów, których nazwy zaczynaj si na liter S (ANSI-89). Dla pola NazwaPrzesyłki; wywietla zamówienia dostarczone do klientów, których nazwy zaczynaj si na liter S (ANSI-92). Dla pola IDZamówienia; wywietla zamówienia, których identyfikatory kocz si cyframi 99. Dla pola NazwaFirmy; wywietla zamówienia firm, których nazwa jest dłusza ni 30 znaków. Cz wartoci pola (Like) Like "S*" Like "S%" Like "*Imports" Like "%Imports" nazwy zaczynaj si na liter S (ANSI-89). nazwy zaczynaj si na liter S (ANSI-92). nazwy kocz si wyrazem Imports (ANSI-89). nazwy kocz si wyrazem Imports (ANSI-92). Like "[A-D]*" nazwy zaczynaj si na litery od A do D (ANSI-89). Like "[A- D]%" Like "*ar*" Like "%ar%" Like "Maison Dewe?" Like "Maison Dewe_" nazwy zaczynaj si na litery od A do D (ANSI-92). Dla pola NazwaPrzesyłki wywietla zamówienia dostarczone do klientów, których nazwy zawieraj sekwencj liter ar (ANSI-89). nazwy zawieraj sekwencj liter ar (ANSI-92). pierwsza cz nazwy jest słowem Maison, a druga słowem picioliterowym zaczynajcym si od Dewe, gdzie ostatnia litera jest nieznana (ANSI-89). pierwsza cz nazwy jest słowem Maison, a druga słowem picioliterowym zaczynajcym si od Dewe, gdzie ostatnia litera jest nieznana (ANSI-92). Daty #02-02-2000# Dla pola DataWysyłki; wywietla zamówienia wysłane 2 lutego 2000 (ANSI-89). '02-02-2000' Date() Dla pola DataWysyłki; wywietla zamówienie wysłane 2 lutego 2000 (ANSI-92). Dla pola DataWymagana; wywietla zamówienia,
które maj by zrealizowane w dniu biecym. Between Date( ) And DateAdd("m", 3, Date( )) Dla pola DataWymagana; wywietla zamówienia, które maj by zrealizowane w cigu trzech miesicy poczynajc od daty biecej. < Date( ) - 30 Dla pola DataZamówienia; wywietla zamówienia starsze ni 30 dni. Year([DataZamówienia]) = 1999 DatePart("q", [DataZamówienia]) = 4 DateSerial(Year ([DataZamówienia]), Month([DataZamówienia]) + 1, 1) - 1 Year([DataZamówienia]) = Year(Now()) And Month([DataZamówienia]) = Month(Now()) Dla pola DataZamówienia; wywietla zamówienia z roku 1999. Dla pola DataZamówienia; wywietla zamówienia z czwartego kwartału. Dla pola DataZamówienia wywietla zamówienia z ostatniego dnia kadego miesica. Dla pola DataZamówienia; wywietla zamówienia z biecego miesica. Warto pusta (Null lub cig znaków o zerowej długoci) Is Null Dla pola RegionOdbiorcy; wywietla zamówienia klientów, dla których pole RegionOdbiorcy ma warto Null (Null: Warto, któr mona wprowadza w polach lub uywa w wyraeniach i kwerendach, aby wskaza dane brakujce lub nieznane. W jzyku Visual Basic warto Null wskazuje słowo kluczowe Null. Niektóre pola, na przykład pola klucza podstawowego, nie mog zawiera wartoci Null.) (puste). Is Not Null Dla pola RegionOdbiorcy; wywietla zamówienia klientów, dla których pole RegionOdbiorcy zawiera warto. " " Dla pola Faks; wywietla zamówienia klientów, którzy nie maj faksu w pole Faks zamiast wartoci Null zawiera cig znaków o zerowej długoci (cig o zerowej długoci: Cig, który nie zawiera adnych znaków. Cigu o zerowej długoci mona uy, aby wskaza, e dla danego pola nie istnieje adna warto. Cig o zerowej długoci wprowadza si przez wpisanie dwóch znaków podwójnego cudzysłowu bez spacji midzy nimi ("").). i funkcji agregujcej domeny > (DStDev("[Fracht]", "Zamówienia") + DAvg("[Fracht]", "Zamówienia")) > DAvg("[Ilo]", "SzczegółyZamówie") Dla pola Fracht; wywietla zamówienia, dla których koszt frachtu przewysza warto redni zwikszon o odchylenie standardowe. Dla pola Ilo; wywietla produkty zamówione w iloci wikszej ni rednia ilo zamówienia. podkwerendy jako kryterium (SELECT [CenaJednostkowa] FROM [Produkty] WHERE [NazwaProduktu] Dla pola CenaJednostkowa; wywietla produkty, których cena jest równa cenie syropu anykowego.
= "Syrop anykowy") > (SELECT AVG([CenaJednostkowa]) FROM [Produkty]) > ALL (SELECT [Płaca] FROM [Pracownicy] WHERE ([Tytuł] LIKE "*Dyrektor*") OR ([Tytuł] LIKE "*Wiceprezes*")) > ALL (SELECT AVG([CenaJednostkowa] * [Ilo]) FROM [SzczegółyZamówie]) Dla pola CenaJednostkowa; wywietla produkty, których cena jednostkowa jest wysza do redniej. Dla pola Pensja; wywietla wszystkich przedstawicieli handlowych, których wynagrodzenie jest wysze od wynagrodzenia pracowników, których tytuł zawiera okrelenia Dyrektor lub Wiceprezes. Dla pola obliczeniowego (pole obliczeniowe: Pole zdefiniowane w kwerendzie, w którym wywietlany jest wynik wyraenia, a nie dane przechowywane. jest obliczany ponownie za kadym razem, gdy zmienia si jakakolwiek warto wystpujca w wyraeniu.) SumaZamówienia: [CenaJednostkowa] * [Ilo]; wywietla zamówienia, dla których całkowita warto zamówienia jest wysza od redniej. Przykłady wyrae uywanych w polach obliczeniowych Wykonywanie operacji na wartociach tekstowych ImiINazwisko: [Imi] & " " & [Nazwisko] Adres2: [Miasto] & " " & [Region] & " " & [KodPocztowy] IDProduktu: Left([NazwaProduktu], 1) KodTypu: Right([KodMajtkowy], 2) NumerKierunkowy: Mid([Telefon], 2, 2) W polu ImiINazwisko wywietla wartoci pól Imi i Nazwisko oddzielone spacj. W polu Adres2 wywietla wartoci pól Miasto, Region i KodPocztowy oddzielone spacjami. W polu IDproduktu wywietla pierwszy znak pola NazwaProduktu. W polu KodTypu wywietla dwa ostatnie znaki pola KodrodkaTrwałego. W polu NumerKierunkowy wywietla trzy znaki (poczwszy od drugiego) pola Telefon. Wykonywanie operacji arytmetycznych OpłataCałkowita: [Fracht] * 1,1 WysokoZamówienia: [Ilo] * [CenaJednostkowa] CzasDostawy: [DataWysyłki] - [DataDostawy] IloDo Dyspozycji: [StanMagazynu] + [IloZamówienia] ProcentOpłatPrzewozowych: Sum([Fracht])/Sum([Podsumowanie]) W polu OpłataCałkowita wywietla opłat frachtow powikszon o 10 procent. W polu WartoZamówienia wywietla iloczyn wartoci z pól Ilo i CenaJednostkowa. W polu CzasKierowania wywietla rónic wartoci z pól DataWymagana i DataWysyłki. W polu IloDo Dyspozycji wywietla sum wartoci z pól StanMagazynu i IloZamówiona. W polu ProcentOpłatPrzewozowych wywietla udział procentowy wartoci frachtu w kadym podsumowaniu,
*100 dzielc sum wartoci w polu Fracht przez sum wartoci w polu Podsumowanie. Wiersz Podsumowanie w siatce projektu (siatka projektu: Siatka uywana do projektowania kwerendy albo filtrowania danych w widoku projektu kwerendy lub w oknie Filtr/Sortowanie zaawansowane. W przypadku kwerend siatka ta była wczeniej nazywana siatk QBE.) musi by wywietlony, a komórka Podsumowanie dla tego pola musi mie ustawienie. Jeli właciwo Format dla tego pola ma ustawienie Procentowy, naley pomin klauzul *100. SumaJednostek: Nz([StanMagazynu], 0) + Nz([IloZamówiona], 0). W polu SumaPozycji wywietla sum wszystkich jednostek znajdujcych si w magazynie i na zamówieniu. Jeli w wyraeniu uywany jest operator arytmetyczny (+, -, *, /) i jedno z pól w wyraeniu ma warto Null (Null: Warto, któr mona wprowadza w polach lub uywa w wyraeniach i kwerendach, aby wskaza dane brakujce lub nieznane. W jzyku Visual Basic warto Null wskazuje słowo kluczowe Null. Niektóre pola, na przykład pola klucza podstawowego, nie mog zawiera wartoci Null.), wynik całego wyraenia bdzie Null. Jeli niektóre rekordy w jednym z pól wyraenia mog mie warto Null, mona skonwertowa warto Null na zero, uywajc funkcji Nz. Wykonywanie operacji na datach i obliczanie dat CzasDostawy: DateDiff("d", [DataZamówienia], [DataWysyłki]) RokZatrudnienia: DatePart("yyyy", [DataZatrudnienia]) NrMiesica: DatePart("M", [DataZamówienia]) DataWczeniejsza: Date( ) - 30 W polu CzasKierowania wywietla liczb dni pomidzy dat zamówienia i dat wysyłki. W polu RokZatrudnienia wywietla rok, w którym pracownik został zatrudniony. W polu NrMiesica wywietla numer miesica. W polu DataWczeniejsza wywietla dat wczeniejsz o 30 dni od daty biecej. Uywanie funkcji SQL i funkcji agregujcych domeny Count(*) Uywa funkcji Count (Policz) do liczenia rekordów w kwerendzie, łcznie z rekordami zawierajcymi pola z wartociami Null (Null: Warto, któr mona wprowadza w polach lub uywa w wyraeniach i kwerendach, aby wskaza dane brakujce lub nieznane. W jzyku Visual Basic warto Null wskazuje słowo kluczowe Null. Niektóre pola, na przykład pola klucza podstawowego, nie mog zawiera
wartoci Null.) (pola puste). ProcentOpłatPrzewozowych: Sum([Fracht]) / Sum([Podsumowanie]) *100 rednifracht: DAvg("[Fracht]", "[Zamówienia]") W polu ProcentOpłatPrzewozowych wywietla udział procentowy wartoci frachtu w kadym podsumowaniu, dzielc sum wartoci w polu Fracht przez sum wartoci w polu Podsumowanie. Wiersz Podsumowanie w siatce projektu (siatka projektu: Siatka uywana do projektowania kwerendy albo filtrowania danych w widoku projektu kwerendy lub w oknie Filtr/Sortowanie zaawansowane. W przypadku kwerend siatka ta była wczeniej nazywana siatk QBE.) musi by wywietlony, a komórka Podsumowanie dla tego pola musi mie ustawienie. Jeli właciwo Format dla tego pola ma ustawienie Procentowy, naley pomin klauzul *100. W polu rednifracht wywietla redni rabat udzielony wszystkim zamówieniom. Uywanie wartoci Null BiecyKraj: IIf(IsNull([Kraj]), " ", [Kraj]) CzasDostawy: IIf(IsNull([DataWymagana] - [DataWysyłki]), "Znajd brakujc dat", [DataWymagana] - [DataWysyłki]). SprzedaPółroczna: Nz([Sprzeda1Kw], 0) + Nz([Sprzeda2Kw], 0). W polu BiecyKraj wywietla pusty cig znaków, jeli pole Kraj zawiera warto Null (Null: Warto, któr mona wprowadza w polach lub uywa w wyraeniach i kwerendach, aby wskaza dane brakujce lub nieznane. W jzyku Visual Basic warto Null wskazuje słowo kluczowe Null. Niektóre pola, na przykład pola klucza podstawowego, nie mog zawiera wartoci Null.); w przeciwnym wypadku wywietla zawarto pola Kraj. W polu CzasKierowania wywietla komunikat Znajd brakujc dat, jeli warto w polu DataWymagana lub DataWysyłki jest wartoci Null. Jeli nie, wywietlana jest rónica tych wartoci. W polu SprzedaPółroczna wywietla sum wartoci z pól opisujcych sprzeda w pierwszym i drugim kwartale, wykorzystujc funkcj Nz do konwersji wartoci Null na zero. Uywanie podkwerendy Kategoria: (SELECT [NazwaKategorii] FROM [Kategorie] WHERE [Produkty].[IDkategorii]=[Kategorie].[IDkategorii]). W polu Kategoria wywietla warto pola NazwaKategorii, jeli IDKategorii w tabeli Kategorie jest taki sam, jak IDKategorii w tabeli Produkty. Przykłady wyrae uywanych w kwerendach aktualizujcych Poniszych wyrae (wyraenie: Dowolna kombinacja operatorów matematycznych i logicznych, stałych,
funkcji, nazw pól, formantów i właciwoci, której wynikiem jest pojedyncza warto. Wyraenia mog przeprowadza obliczenia, operowa znakami lub testowa dane.) mona uy w siatce projektu (siatka projektu: Siatka uywana do projektowania kwerendy albo filtrowania danych w widoku projektu kwerendy lub w oknie Filtr/Sortowanie zaawansowane. W przypadku kwerend siatka ta była wczeniej nazywana siatk QBE.) kwerendy w komórce Aktualizacja do pola, które ma by aktualizowane. "Sprzedawca" Zmienia warto tekstow na wyraz Sprzedawca. #10-8-99# Zmienia dat na 10 sierpnia 1999. Tak "NC" & [NumerCzci] [CenaJednostkowa] * [Ilo] [Fracht] * 1,5 DSum("[Ilo] * [CenaJednostkowa]", "Opisy zamówie", "[IDProduktu]=" & [IDProduktu]) Right([KodPocztowyWysyłki], 5) IIf(IsNull([CenaJednostkowa]), 0, [CenaJednostkowa]) Zmienia warto Nie w polu typu Tak/Nie na Tak. Dodaje NC na pocztku kadego podanego numeru. Oblicza iloczyn ceny jednostkowej i iloci. Zwiksza opłat przewozow o 50 procent. Jeli identyfikatory produktów w biecej tabeli odpowiadaj identyfikatorom produktów w tabeli Opisy zamówie, aktualizuje podsumowania sprzeday w oparciu o ilo i cen jednostkow produktu. Odrzuca pocztkowe znaki, pozostawiajc pi pierwszych znaków od prawej. Zmienia warto w polu CenaJednostkowa z Null (Null: Warto, któr mona wprowadza w polach lub uywa w wyraeniach i kwerendach, aby wskaza dane brakujce lub nieznane. W jzyku Visual Basic warto Null wskazuje słowo kluczowe Null. Niektóre pola, na przykład pola klucza podstawowego, nie mog zawiera wartoci Null.) na zero (0). Przykłady wyrae uywanych w instrukcjach SQL W wielu miejscach w instrukcji SQL (cig/instrukcja SQL: definiujce polecenie jzyka SQL (Structured Query Language), na przykład SELECT, UPDATE lub DELETE, i zawierajce klauzule, na przykład WHERE i ORDER BY. Cigi/instrukcje SQL s zazwyczaj uywane w kwerendach i funkcjach agregujcych.) mona zastosowa wyraenia (wyraenie: Dowolna kombinacja operatorów matematycznych i logicznych, stałych, funkcji, nazw pól, formantów i właciwoci, której wynikiem jest pojedyncza warto. Wyraenia mog przeprowadza obliczenia, operowa znakami lub testowa dane.), co przedstawiono w nastpujcych przykładach. Wyraenia przedstawiono tekstem pogrubionym. SELECT [Imi], [Nazwisko] FROM [Pracownicy] WHERE [Nazwisko] = "Kowalski"; SELECT [IDProduktu], [NazwaProduktu] FROM [Produkty] WHERE [IDKategorii] = Forms![NoweProdukty]![IDKategorii]; SELECT Avg([CenaKocowa]) AS [redniacenakocowa] FROM W polach Imi i Nazwisko wywietla wartoci dla pracowników o nazwisku Kowalski. W polach IDProduktu i NazwaProduktu z tabeli Produkty wywietla wartoci dla rekordów, w których warto IDKategorii zgadza si z wartoci IDKategorii w otwartym formularzu NoweProdukty. W polu o nazwie redniacenakocowa wywietla redni cen kocow zamówie, w
[RozszerzoneOpisyZamówie] WHERE [CenaKocowa] > 1000; SELECT [IDKategorii],Count([IDProduktu]) AS [LiczbaIDProduktów] FROM [Produkty] GROUP BY [IDKategorii] HAVING Count([IDProduktu]) > 10; wypadku których warto w polu CenaKocowa jest wiksza ni 1000. W polu o nazwie LiczbaIDproduktów wywietla łczn liczb produktów dla kategorii, które zawieraj ponad 10 produktów.