1 / 37

Microsoft Access

Microsoft Access. Lekérdezések. Melléklet. NorthwindSQL.mdb adatbázis [X] => QueryX lekérdezés. Elnevezés. Nem lehet két azonos nevű Nem lehet táblával azonos nevű. Lekérdezések típusai. Választó lekérdezések Módosító lekérdezések Törlő Frissítő Hozzáfűző Táblakészítő

arva
Download Presentation

Microsoft Access

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Microsoft Access Lekérdezések

  2. Melléklet • NorthwindSQL.mdb adatbázis • [X] => QueryX lekérdezés

  3. Elnevezés • Nem lehet két azonos nevű • Nem lehet táblával azonos nevű

  4. Lekérdezések típusai • Választó lekérdezések • Módosító lekérdezések • Törlő • Frissítő • Hozzáfűző • Táblakészítő • Kereszttáblás lekérdezés • SQL specifikus lekérdezés • Egyesítő • Átadó • Adatdefiniáló

  5. Választó lekérdezések (DQL) • Vetítés (projekció) • Válogatás (szelekció) • Számított mező • Rendezés • Csoportosítás • Összekapcsolás

  6. SQL nyelv DQL utasításai (1) • Projekció • SELECT m1 [,m2...,mi] FROM táblanév; [0] • Minden mező esetén: * [2] • DISTINCT [3] • TOP [4] • ALL, ez az alapértelmezett • Táblanév.mezőnév • [Szóköz van a névben]

  7. SQL nyelv DQL utasításai (2) • Szelekció • WHERE [5] • And, or, not [6] • Between • Like [7] • Dátumok megadása [8] • Igen/Nem (-1=True; 0=False) • IS NULL • IN, lekérdezések beágyazása [19]

  8. SQL nyelv DQL utasításai (3) • Számított mező [9] • Lehet matematikai, szöveges, logikai, dátum-idő, stb. kifejezés • AS • Szerepelhet a WHERE záradékban [10]

  9. SQL nyelv DQL utasításai (4) • Rendezés • ORDER BY [11] • Több mező szerint is lehet • Rendezés iránya

  10. SQL nyelv DQL utasításai (5) • Csoportképzés • Min(), Max(), Avg(), Sum(), Count() [12] • Csoport képző: GROUP BY [13] • Csoportok szelekciója: HAVING [14] • WHERE záradék csoportosítás esetén

  11. SQL nyelv DQL utasításai (6) • Összekapcsolás • Természetes összekapcsolás [15] • JOIN • INNER [16] • LEFT, RIGHT [17]

  12. SQL nyelv DQL utasításai (7) • UNIO [18] • Azonos számú mezők száma • UNION ALL, alapból csak a különböző sorokat mutatja, így gyorsabb is • Csak az első SELECT-ben használjunk Aliast

  13. Tippek • A lekérdezések egymásra épülhetnek 50 szint mélyen • DML műveletek a lekérdezésekben • Rekordmódosítás a lekérdezésben • Rekordfelvétel a lekérdezésben • Rekord törlése a lekérdezésben

  14. Lekérdezések formázása • Mezőlista tulajdonságok • Mező tulajdonságok • Lekérdezés tulajdonságok

  15. DQL felhasználása • Beágyazott lekérdezések • Másik lekérdezés WHERE záradékában • Listák sorforrása • Másik lekérdezés rekordforrásaként

  16. SQL nyelv DML utasításai (1) • INSERT INTO • Sor (ok) beszúrása • Céltábla • Értékek beszúrása [21] • Lekérdezés beszúrása [22] • Futtatás módja

  17. SQL nyelv DML utasításai (2) • DELETE FROM • Sorok törlése • DELETE * FROM tábla [23] • Feltétel megadása • Futtatás módja

  18. SQL nyelv DML utasításai (3) • UPDATE • Frissítő lekérdezés [24] • Ha nincs WHERE, akkor minden rekordot módosít

  19. SQL nyelv DDL utasításai (1) • SELECT INTO • Táblakészítő parancs • Céltábla • Egy sor beszúrásával [25] • Lekérdezés beszúrásával [26] • Futtatás módja

  20. SQL nyelv DDL utasításai (2) • DROP TABLE • Tábla törlése [27]

  21. SQL nyelv DDL utasításai (3) • CREATE TABLE [28] • Mezők • Adattípusok • Kulcs • Kötelező • Idegenkulcs

  22. Tippek lekérdezésekhez (1) • Táblák lekérdezése [29] • Véletlen rekordok kiválasztása [30] • Paraméterek használata [31] [32] • További tippek: • acFundSQL.mdb • acIntSQL.mdb

  23. Tippek lekérdezésekhez (2) • Lekérdezés tulajdonságai • Leírás • Összes mező a kimenetre • Csúcsérték • Egyedi értékek (DISTINCT) • Egyedi rekordok (DISTINCTROW) • Forrás-adatbázis

  24. Hasznos függvények (1) • Dátum-idő függvények • Date(), Time(), Now() • DateAdd(intervallum;szám;dátum) • DateDiff(intervallum;d1;d2;hétkezdőnap) • DateSerial(é;h;n), TimeSerial(ó;p;m) • DateValue(szöveg), TimeValue(szöveg) • Day(dátum), Month(dátum), Year(dátum) • Hour(idő), Minute(idő), Second(idő) • IsDate(kif)

  25. Hasznos függvények (2) • Átalakítás függvények • Asc(karakter) • Chr(szám) • Hex(szám) • Oct(szám) • Nz(kifejezés;érték ha Null)

  26. Hasznos függvények (3) • Vizsgálat függvények • IsNumeric(kifejezés) • IsNull(kifejezés) • IsDate(kifejezés)

  27. Hasznos függvények (4) • Matematikai függvények • Abs(szám) • Int(szám) • Kerek(szám;pontosság) • Log(szám) • Rnd(szám) • Sgn(szám) • Sqr(szám)

  28. Hasznos függvények (5) • Szövegkezelő függvények • InStr(kezdet;sz1;sz2) • LCase(szöveg), UCase(szöveg) • Left(szöv;n), Right(szöv;n), Mid(szöv,n,m) • Len(szöveg) • LTrim(szöv), RTrim(szöv), Trim(szöv) • String(szám;szöveg) • StrComp(sz1;sz2) • Space(szám)

  29. Hasznos függvények (6) • Programfolyamat függvények • Choose(index;kif1;kif2;…) • IIF(logikai kif;igaz kif;hamis kif) • Switch(logkif1;kif1;logkif2;kif2;…)

  30. Hasznos függvények (7) • Tartományösszesítő függvények • DAvg(kifejezés;tartomány;feltétel) • DCount(kifejezés;tartomány;feltétel) • DFirst(kifejezés;tartomány;feltétel) • DLast(kifejezés;tartomány;feltétel) • DMax(kifejezés;tartomány;feltétel) • DMin(kifejezés;tartomány;feltétel) • DSum(kifejezés;tartomány;feltétel) • DLookup(kifejezés;tartomány;feltétel)

  31. Konstansok • „” • False (Hamis) 0 • True (Igaz) -1 • Null

  32. Operátorok • Aritmetikai • +, -, *, /, ^, \, mod • Összehasonlító • <, <=, >, >=, <>, =, Between • Logikai • Not, And, Or, Xor, Imp, Eqv • Szöveg • &

  33. Lekérdezések feldolgozása • Szintaktika ellenőrzése • Léteznek-e a megnevezett táblák, mezők, helyesek-e a kifejezések, stb. • Lekérdezés-terv létrehozása • A legoptimálisabb módszer meghatározása • Végrehajtás

  34. Lekérdezés-terv (1) • JOIN algoritmusok • 830 sor rendelés • 2155 sor részl. • Rendeléskód [1:N] • Hivatkozási integritás

  35. Lekérdezés-terv (2) • SELECT * FROM [Rendelések] INNER JOIN [Rendelés részletei] ON [Rendelések].[Rendeléskód] = [Rendelés részletei].[Rendeléskód] • Két módszer kínálkozik • Végig megyünk a rendeléseken, és minden rekordhoz megkeressük az összes rekordot • Végigmegyünk a gyermek rekordokon, és megkeressük mindegyikhez az aparekordot • Mindegyik két egymásba ágyazott ciklus. • NESTED LOOP

  36. Lekérdezés-terv (3) • NESTED LOOP • Ha az egyik tábla kicsi, akkor gyors • Ha mindkét tábla nagy, akkor nagyon költségigényes • Nagy táblák esetén, ha van WHERE záradék, ami csökkenti a rekordszámot, akkor ismét gyors lehet

  37. Lekérdezés-terv (4) • MERGE JOIN • Mindkét táblán csak egyszer megy végig • Csak akkor ha mindkét táblában a rekordok rendezett módon érhetők el • Van index a JOIN mezőkre • A Merge előtt lefut egy logikai sorbarendezési művelet • Két lába van, az egyikkel az egyik, a másikkal a másik táblán csoszog előre • Használhatatlan, ha a JOIN operátor nem =, hanem >=, <=, stb.

More Related