Lekérdezések az SQL SELECT utasítással



Hasonló dokumentumok
Lekérdezések az SQL SELECT utasítással

Lekérdezések az SQL SELECT utasítással. Copyright 2004, Oracle. All rights reserved.

Adatok szűrése, rendezése

Az SQL*Plus használata

Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések

Több tábla összekapcsolásán alapuló lekérdezések

Több tábla összekapcsolásán alapuló lekérdezések. Copyright 2004, Oracle. All rights reserved.

Többtáblás lekérdezések megjelenítése

ADATBÁZIS HASZNÁLAT I. 4. gyakorlat

ADATBÁZISOK I. Az esetleges hibákat kérlek a csongor@csongorbokay.com címen jelezd! Utolsó módosítás: március 20.

ORACLE. SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

B I T M A N B I v: T M A N

3.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

1. fejezet Microsoft Excel 2010 Tartománynevek... 3

Adatbázis használat I. 2. gyakorlat

Célkitűzések Az Oracle10 g felépítésének, használatának alapszíntű megismerése

Csoportosított adatok megjelenítése összesítı függvények használatával. Copyright 2004, Oracle. All rights reserved.

Adatbázisok* tulajdonságai

8. Gyakorlat SQL. DDL (Data Definition Language) adatdefiníciós nyelv utasításai:

Adatbázis használata PHP-ből

INFORMATIKAI ALAPISMERETEK

Csoportosított adatok megjelenítése sorhalmaz függvények használatával

Blonde. Szépségszalon, Szolárium, Spa, Fitness. Ügyviteli Rendszer. Funkcionális Specifikáció. Verzió 1.1

A trigger egy aktualizálási művelet esetén végrehajtandó programrészletet definiál. Alakja:

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

NEPTUN_FDL, META. (Szűrések, dokumentáció) Budapest, 2001

Adatbázis használat I. 5. gyakorlat

Adatbázis-kezelés, információs-rendszerek

A PL/SQL motor. A PL/SQL nyelvű egységek fordítását és futtatását végző rendszer. az adatbázis-kezelőben fejlesztőeszközben (pl.

Felhasználói kézikönyv Biztonsági útmutató adminisztrátorok számára

Adatbázis Rendszerek I. 9. SQL alapok (DDL esettanulmány)

Példa: Aktuális könyvtár tartalmának fájlba mentése, melynek neve az aktuális dátum és idő: ls l > `date+%f_%h-%m`.txt

Szövegszerkesztő programok: Jegyzettömb, WordPad, Microsoft Word

ADAFOR Iskolai adatforgalmazó program Kezelési útmutató

ADATBÁZISKEZELÉS ADATBÁZIS

FELHASZNÁLÓI KÉZIKÖNYV

M4 TÁBLÁZATKEZELÉS ALAPJAI

CellCom. Szoftver leírás

Adatbázis használat I. 2. gyakorlat

8. Laboratóriumi gyakorlat: Bevezetés a reguláris kifejezések használatába

AIX 6.1. IBM Systems Director Console for AIX

Operációs rendszerek 2 3. alkalom - Reguláris kifejezések, grep, sed. Windisch Gergely windisch.gergely@nik.uni-obuda.hu

HÁZI FELADAT ELSŐ GYAKORLAT MIELŐTT ELKEZDENÉNK ELINDULÁS. ÜZLETI INFORMATIKAI ESZKÖZÖK Kiadványszerkesztés

Relációs algebrai lekérdezések átírása SQL SELECT-re (példák)

Alkalmazott modul: Programozás

AXEL Számlázó és készletnyilvántartó program

LEKÉRDEZÉSEK SQL-BEN. A relációs algebra A SELECT utasítás Összesítés és csoportosítás Speciális feltételek


Tartalomjegyzék. Tartalomjegyzék 1. Az SQL nyelv 1 Az SQL DDL alapjai 2

Internet programozása. 3. előadás

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

Lekérdezések az SQL-ben 1.rész

Documentation. OTRS Business Solution 4 kézikönyv

Felhasználói kézikönyv

Adatbázis-kezelés. Harmadik előadás

A térinformatika t. Az informáci. ciós s rendszerek funkciói. Az adatok vizsgálata

Számolótábla Általános ismeretek

Lekérdezések az SQL-ben 1.rész

PDT Sync Pack v 1.3. PDT Sync Server és Sync Client

ADATBÁZISOK gyakorlat: SQL 2. rész SELECT

Informatikus informatikus Térinformatikus Informatikus T 1/9

A JAVA FUTTATÁSAKOR ELŐFORDULÓ HIBA-

Gate Control okostelefon-alkalmazás

Az Oracle rendszer komponensei

SQL. Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák

BEVEZETÉS Az objektum fogalma

Infokommunikáció (PF10IK511L) kérdései

ProCOM GPRS ADAPTER TELEPÍTÉSI ÉS ALKALMAZÁSI ÚTMUTATÓ. v és újabb modul verziókhoz Dokumentumverzió:

MS Access Feladatgyűjtemény

Adatbázisok I. Az SQL nyelv

Karbantartás. Az ESZR Karbantartás menüjébentudjuk elvégezni az alábbiakat:

Felhasználói Útmutató egyesületi tenyészetek részére

NYILVÁNOS KÖNYVTÁRI KATALÓGUSOK

SZÁMLÁZÁS VEVŐ-SZÁLLÍTÓ NYILVÁNTARTÁS (UJVSZ) KEZELÉSI LEÍRÁS

Informatikai tevékenység 2234 Maglód, Széchenyi u Mérnöki, tanácsadói tevékenység Iroda: Mobil: Telefon:

Documentation. OTRS Business Solution 5 kézikönyv

Tartalomjegyzék Bevezető...1 Adatátvétel Windows alkalmazásból...1 Adatátvétel webes alkalmazásból...2 Adatforrás formátuma...2 Megvalósítás...

Adatbázisok. 9. gyakorlat SQL: SELECT október október 26. Adatbázisok 1 / 14

Bártfai Barnabás. Office 2010

Általános funkciók partitúrái. Felhasználói dokumentáció verzió 2.0.

Programozás és adatbázis kezelés PHP ben

Információ és kommunikáció

Internet technológiák

Tranzakciókezelés PL/SQL-ben

INFORMATIKAI ALAPISMERETEK

5.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

Novell GroupWise levelező rendszer alapok Kiadványunk célja, hogy a Nemzeti Közszolgálati Egyetemen használt Novell GroupWise (a továbbiakban GW)

Gate Control okostelefon-alkalmazás

Adatbázisok II. Jánosi-Rancz Katalin Tünde 327A

Eseményvezérelt alkalmazások fejlesztése II 12. előadás. Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto

2. Hatványozás, gyökvonás

Adatbázisok I A relációs algebra

SQL bevezetés. Select-From-Where záradékok Több relációt tartalmazó lekérdezések Alkérdések

Tartalomjegyzék. Számlázó program v1.x felhasználói kézikönyv. v1.08

MS-LT-01 Adatbeviteli Terminál Üzemeltetési Kézikönyv

Programozás I. Metódusok C#-ban Egyszerű programozási tételek. Sergyán Szabolcs

ProAnt Felhasználói Útmutató

Tartalomjegyzék Általános ismeretek a programról A táblázatok használata Az objektumtípusok áttekintése Részletes leírás Statisztikai jelentés 129

Egységes és objektumközpontú adatbázis-kezelés (2. rész)

Átírás:

Lekérdezések az SQL SELECT utasítással

Célok Az SQL SELECT utasítás lehetőségeinek bemutatása A megjelenítendő oszlopok kiválasztása Elemi SELECT utasítások végrehajtása Az SQL utasítások és az isql*plus parancsok megkülönböztetése

Az SQL SELECT utasítás lehetőségei Vetítés Kiválasztás 1. tábla 1. tábla Összekapcsolás 1. tábla 2. tábla

Elemi SELECT utasítások SELECT * {[DISTINCT] column expression [alias],...} FROM table; A SELECT a megjelenítendő oszlopokat azonosítja A FROM az oszlopokat tartalmazó táblákat azonosítja * összes oszlop DISTINCT ismétlődések elnyomása column expression megadott oszlop vagy kifejezés értéke alias másodnév table táblanév Például a dolgozók tábla összes adatának kilistázása: SELECT * FROM employees

Összes oszlop kiválasztása SELECT * FROM departments; A fenti utasítás ekvivalens a következővel: SELECT department_id, department_name, manager_id,location_id FROM departments;

Meghatározott oszlopok kiválasztása Adjuk meg az összes osztálynak és a címének az azonosítóját! SELECT department_id, location_id FROM departments; Az oszlopokat vesszővel választjuk el a listában. Számít a sorrend!

SQL utasítások Kis/nagy betűre nem érzékenyek. Lehetnek egy vagy több sorosak. Kulcsszavak nem rövidíthetők és sorok között nem elvághatók. A SELECT és FROM listákat általában külön sorba írjuk. Bekezdések növelik az olvashatóságot. isql*plus: az SQL utasítás opcionálisan pontosvesszővel zárható le. Ha több SQL utasítás van, akkor a pontosvessző kötelező közöttük. (Az Execute gombbal hajtható végre!) SQL*plus: minden egyes SQL utasítást pontosvesszővel kell lezárni. (Az ENTER-re hajtja végre!)

isql*plus: Oszlop fejléc alapértelmezések Alapértelmezett fejléc-igazítás: Középre Alapértelmezett fejléc-megjelenítés: Nagybetű SQL*Plus: Karakterlánc és Dátum típusú oszlop fejléce: Balraigazított Numerikus oszlop fejléce: Jobbraigazított Alapértelmezett fejléc-megjelenítés: Nagybetű SELECT last_name, hire_date, salary FROM employees; isql*plus- ban:

Aritmetikai kifejezések Az aritmetikai kifejezés (számított oszlop) tartalmazhat oszlopnevet, konstanst, és aritmetikai műveletet. A numerikus és dátum típusra alkalmazható aritmetikai műveletek: (DATE,TIMESTAMP adattípusra csak + és -!) Művelet Jelentés + Összeadás - Kivonás * Szorzás / Osztás Az aritmetikai műveletek az SQL utasítás bármelyik részében megengedettek, kivéve a FROM listát!

Aritmetikai műveletek használata (számított oszlop) Mennyi lenne a 300-zal növelt fizetés? A számított oszlopot a tábla nem tárolja, csak az eredményben látszik. SELECT last_name, salary, salary + 300 FROM employees; Kiértékelési sorrend: 1. Szorzás, osztás majd összeadás, kivonás. 2. Azonos prioritás esetén balról jobbra értékeljük ki. 3. Zárójelekkel felülírható, vagy egyértelművé tehető a sorrend.

Műveletek kiértékelési sorrendje 1. Először a szorzás, majd az összeadás (ugyanaz, mint (12*salary)+100 ): SELECT last_name, salary, 12*salary+100 FROM employees; 1 SELECT last_name, salary, 12*(salary+100) FROM employees; 2 2. Először az összeadás, majd a szorzás.

Nullérték A nullérték: hiányzó, nem elérhető, nem garantált, ismeretlen, nem alkalmazható érték. A nullérték nem egyenlő 0-val vagy az üres karakterlánccal! Csak a kereskedelmi igazgatónak (SA_MAN) és a kereskedőnek (SA_REP) lehet jutaléka (commission_pct), mindenki másnak nullérték szerepel hiányzó értékként. SELECT last_name, job_id, salary, commission_pct FROM employees;

Nullérték aritmetikai kifejezésekben Nullértéket tartalmazó aritmetikai kifejezés kiértékelésének eredménye nullérték! SELECT last_name, 12*salary*commission_pct FROM employees;

Oszlopok másodnevének megadása Az oszlop másodneve: az oszlop fejlécét is átnevezi, számított oszlop esetén különösen hasznos, az oszlopnevet (szóközzel elválasztva) követi (opcionálisan az AS kulcsszó is használható). Dupla idézőjelbe kell tenni, ha szóközt vagy speciális karaktert (#, $, ) használunk, illetve ha nem csupa nagybetűből áll.

Oszlopok másodnevének használata A másodnév előtt AS kulcsszó is használható. SELECT last_name AS name, commission_pct comm FROM employees; A kisbetűk és szóköz miatt kettős idézőjel kell! SELECT last_name "Name", salary*12 "Annual Salary" FROM employees;

Összefűzés (konkatenálás) művelet Az összefűzés (konkatenálás) művelet: Oszlopokat vagy karakterláncokat kapcsol össze egyetlen oszloppá. Jelölése: Az eredményoszlop egy karakterkifejezés. Karakterlánc null eredménye a karakterlánc! SELECT FROM last_name job_id AS "Employees" employees;

Literálok A literál olyan karakteres, vagy numerikus, vagy dátumtípusú érték, amely a SELECT listában előfordul. A dátumtípusú és a karakteres literál értékét szimpla idézőjelek közé kell tenni. Minden egyes visszaadott sorban megjelenik az adott érték.

Literálok használata Olvashatóbbá tehetjük a listát! SELECT last_name ' is a ' job_id AS "Employee Details" FROM employees;

A Quote (q) művelet Saját idézőjelet definiálhatunk vele. Tetszőleges határoló karakter választható. Határoló lehet a következő párok valamelyike is: [ ] { } ( ) < > Növeli az olvashatóságot és a használhatóságot is. SELECT department_name q'[, it's assigned Manager Id: ]' manager_id AS "Department and Manager" FROM departments;

Ismétlődő Sorok A lekérdezések eredménye alapértelmezésben multihalmaz (bag), azaz tartalmazhat ismétlődő sorokat. DISTINCT kulcsszó: szűri az ismétlődő sorokat. 1: összes osztálykód, 2: összes különböző osztálykód SELECT department_id FROM employees; 1 SELECT DISTINCT department_id FROM employees; 2

SQL és isql*plus SQL utasítások Oracle szerver Internet böngésző Kliens isql*plus parancsok Formázott jelentések A lekérdezés eredménye (Az eredmény HTML fájlba menthető.)

SQL utasítások kontra isql*plus parancsok SQL Egy nyelv ANSI standard Kulcsszavak nem rövidíthetők isql*plus Egy környezet Oracle szabadalom Kulcsszavak rövidíthetők Böngészőben fut Központilag betöltött; nem kell az egyes gépekre telepíteni SQL utasítások isql*plus parancsok

Az isql*plus áttekintése Az isql*plus-ba bejelentkezés után: Leírás kérhető a táblák szerkezetéről SQL utasítások szerkeszthetők, végrehajthatók Kiírhatók fájlba (szkript) az SQL utasítások A fájlba kimentett SQL utasítások betölthetők, vagy végrehajthatók Az isql*plus utasítások osztályozása: A környezet beállítása Az SQL utasításokra vonatkozó általános beállítások Az eredmény formázása Az SQL utasítások küldése a böngészőből az Oracle szerverhez SQL utasítások szerkesztése Változók definiálása, megjelenítése, átadása SQL utasításoknak

Bejelentkezés isql*plus-ba Kedvenc böngésződből: http://ablinux.inf.elte.hu:5560/isqlplus/ Connect Identifier: oradb

Az isql*plus környezet 8 9 7 1 6 2 3 4 5

A táblaszerkezet megjelenítése Az isql*plus DESCRIBE parancsa használható az adott tábla, nézet vagy szinonima szerkezetének megjelenítésére: DESC[RIBE] tablename Az eredmény a tábla sémáját adja meg (oszlop, lehet nullérték benne vagy nem, típus) formában.

A táblaszerkezet megjelenítése DESCRIBE employees Elemi adattípusok: Adattípus Leírás NUMBER(p,s) Maximum p jegyű szám, s tízedesjeggyel VARCHAR2(s) DATE CHAR(s) Maximum s hosszú, változó hosszú karakteres érték i.e. 4712 január 1. és i.sz. 9999. december 31. közé eső dátum. s hosszú karakteres érték

Szkriptfájlok használata A szkriptfájlok kiterjesztése:.sql SELECT last_name, hire_date, salary FROM employees; 1 2 Az utasítás mentése Az utasítás begépelése

Szkriptfájlok használata

Szkriptfájlok használata 1 Betöltés

Szkriptfájlok használata D:\TEMP\emp_data.sql 2 A szkriptfájl helye 3 Betöltés

3 Váltsunk át a munkaterület lapra! 1 2 Az isql*plus történet lapja Töltsük be a munkaterületre! Jelöljük be azokat az utasításokat, amelyeket újra akarunk futtatni!

Az isql*plus történet lapja 4 Hajtsuk végre a bemásolt utasításokat! 3 Váltsunk át a munkaterület lapra!

Az isql*plus környezeti és egyéb paramétereinek beállítása Beállítások (preferenciák) 1 A kategória kiválasztása 2 3 Állítsuk be a kívánt paramétert!

Az eredmény kimeneti helyének beállítása Alkalmazás 2 Az input alatt jelenjen meg vagy egy HTML fájlba mentsük? 1

Összefoglalás Ebben a részben megtanultuk: hogyan írjunk olyan SELECT utasítást, amely: visszaadja egy tábla összes sorát és oszlopát, visszaadja a megadott oszlopait egy táblának, oszlop-másodneveket használ a kifejezőbb és beszédesebb oszlop-fejlécek elérésére, az isql*plus környezet használatát SQL utasítások és isql*plus parancsok írására, végrehajtására, elmentésére és betöltésére. SELECT * {[DISTINCT] column expression [alias],...} FROM table;

Feladatok 1. A következő utasítás több hibát tartalmaz. Melyek ezek? SELECT employee_id, last_name sal x 12 ANNUAL SALARY FROM employees; 2. Jelenítsük meg az osztályok (departments) tábla sémáját és tartalmát! 3. Adjuk meg a dolgozók (employees) vezetéknevét (last_name), beosztási kódját (job_id), belépési dátumát (hire_date) és azonosítóját (employee_id) úgy, hogy az azonosító legyen az első oszlop, és a belépési dátum neve STARTDATE legyen! Mentsük el egy lab_01_07.sql fájlba a megoldást! 4. Adjuk meg az összes különböző beosztási kódot (job_id)! 5. Fűzzük össze a vezetékneveket (last_name) a beosztási kóddal (job_id), úgy hogy köztük egy vessző és egy szóköz legyen, és az új oszlop neve Employee and title legyen!