Databáze I. Přednáška 6
|
|
- Radka Vladimíra Bednářová
- před 4 lety
- Počet zobrazení:
Transkript
1 Databáze I Přednáška 6
2 SQL aritmetika v dotazech SQL lze přímo uvádět aritmetické výrazy násobení, dělení, sčítání, odčítání příklad z minulé přednášky: zdvojnásobení platu všem zaměstnancům UPDATE ZAMESTNANEC SET plat = 2* plat;
3 výpočet platu zaměstnanců v EURech SELECT JMENO, PRIJMENI, PLAT/27.20 FROM ZAMESTNANEC výpočet platu zaměstnanců v EURech, kteří nejsou Češi předpokládám, že nemají rodné číslo, v DB má tedy hodnotu NULL (nesmí být klíčem) SELECT JMENO, PRIJMENI, PLAT/27.20 FROM ZAMESTNANEC WHERE RC IS NULL
4 SQL agregační funkce COUNT() vrátí počet hodnot SUM() vrátí sumu hodnot AVG() vrátí aritmetický průměr MAX() vrátí maximální hodnotu MIN() vrátí minimální hodnotu
5 Chování agregačních funkcí obecně agreg_funkce(all DISTINCT sloupec) ALL implicitní volba do výsledku zahrnuje duplicity (duplicitní řádky) DISTINCT do výsledku nezahrnuje duplicity
6 Chování agregačních funkcí COUNT(sloupec) vrátí počet hodnot ve sloupci sloupec, započítá opakující se hodnoty, hodnoty NULL nezapočítá lze použít DISTINCT aplikována na prázdnou tabulku vrací hodnotu 0 ale: COUNT(*) počítá řádky tabulky, včetně opakujících se a prázdných
7 Chování agregačních funkcí SUM(sloupec), AVG(sloupec) vrátí součet, resp. aritmetický průměr hodnot sloupce sloupec, započítá opakující se hodnoty, hodnoty NULL nezapočítá lze použít DISTINCT aplikovány na prázdnou tabulku vrací hodnotu NULL SUM(*) ani AVG(*) nelze použít
8 Chování agregačních funkcí MAX(sloupec), MIN(sloupec) vrátí maximální, resp. minimílní hodnotu ze sloupce sloupec, hodnoty NULL ignoruje použití DISTINCT nemá význam aplikovány na prázdnou tabulku vrací hodnotu NULL MAX(*) ani MIN(*) nelze použít lze je aplikovat i na typy CHAR a DATE
9 zjištění počtu všech čtenářů v knihovně SELECT COUNT(*) FROM CTENAR; nebo SELECT COUNT(PRIJMENI) FROM CTENAR; zjištění počtu různých příjmení čtenářů v knihovně SELECT COUNT(DISTINCT PRIJMENI) FROM CTENAR;
10 ČTENÁŘ RČ JMÉNO PŘÍJMENÍ /1234 František Kuldanů /5678 Josef Novák /1256 Jan Novák SELECT COUNT(PRIJMENI) FROM CTENAR; výsledek dotazu: 3 SELECT COUNT(DISTINCT PRIJMENI) FROM CTENAR; výsledek dotazu: 2
11 zjištění počtu všech exemplářů v knihovně SELECT COUNT(*) FROM EXEMPLAR; zjištění počtu všech exemplářů v knihovně od knihy Babička SELECT COUNT(PRIR_C) FROM EXEMPLAR, KNIHA WHERE KNIHA.ISBN = EXEMPLAR.ISBN AND NAZEV="Babička";
12 zjištění celkové hodnoty exemplářů v knihovně SELECT SUM(CENA)FROM EXEMPLAR; zjištění celkové hodnoty exemplářů v knihovně od knihy Babička SELECT SUM(CENA) FROM EXEMPLAR, KNIHA WHERE KNIHA.ISBN = EXEMPLAR.ISBN AND NAZEV="Babička";
13 zjištění ceny nejdražšího exempláře v knihovně SELECT MAX(CENA)FROM EXEMPLAR; zjištění ceny nejlevnějšího a nejdražšího exemplář od knihy Babička SELECT MIN(CENA),MAX(CENA) FROM EXEMPLAR, KNIHA WHERE KNIHA.ISBN = EXEMPLAR.ISBN AND NAZEV="Babička";
14 Konstrukt GROUP BY umožňuje seskupovat záznamy v tabulce podle hodnoty vybraného sloupce používá se ve spojení s agregačními funkcemi, kdy se neaplikují na celou tabulku, ale na skupinu
15 zjištění celkové hodnoty exemplářů od jednotlivých titulů v knihovně SELECT KNIHA.NAZEV, SUM(CENA) FROM EXEMPLAR, KNIHA WHERE KNIHA.ISBN = EXEMPLAR.ISBN GROUP BY KNIHA.NAZEV;
16 KNIHA ISBN TITUL AUTOR U nás A. Jirásek Babička B. Němcová EXEMPLÁŘ PŘÍR_Č CENA D_NÁK ISBN
17 KNIHA*EXEMPLÁŘ Němcová Babička Němcová Babička Jirásek U nás výsledek dotazu: Babička 200 U nás 150
18 zjištění počtu exemplářů od jednotlivých ISBN SELECT KNIHA.ISBN, NAZEV, COUNT(PRIR_C) FROM EXEMPLAR, KNIHA WHERE KNIHA.ISBN = EXEMPLAR.ISBN GROUP BY KNIHA.ISBN;
19 KNIHA*EXEMPLÁŘ Němcová Babička Němcová Babička Jirásek U nás výsledek dotazu: Babička U nás 1
20 Konstrukt HAVING specifikuje omezení, která data přispívají do výsledku agregačních funkcí za HAVING mohou být pouze seskupovací sloupce nebo agregační funkce HAVING se aplikuje na skupiny specifikované GROUP BY
21 zjištění počtu exemplářů od jednotlivých ISBN; ve výsledku ponech jen ty knihy, od kterých je počet exemplářů větší nebo roven 10 SELECT KNIHA.ISBN, NAZEV, COUNT(PRIR_C) FROM EXEMPLAR, KNIHA WHERE KNIHA.ISBN = EXEMPLAR.ISBN GROUP BY KNIHA.ISBN HAVING COUNT(PRIR_C)>=10;
22 agregační funkce mohou být součástí i tzv. poddotazu (hnízděného dotazu): Najdi jména a příjmení všech čtenářů, kteří mají vypůjčeny více než dva exempláře SELECT JMENO,PRIJMENI FROM CTENAR c, WHERE (SELECT COUNT(PRIR_C) FROM SI_VYPUJCIL WHERE RC=c.RC) > 2;
23 Poznámky: poddotaz vrací jednu hodnotu: tzv. skalární poddotaz poddotaz je závislý na vnějším dotazu tzv. vztažený poddotaz c představuje zafixovaný řádek tabulky CTENAR
24 Predikáty pro práci s množinami predikát v matematické logice výraz, o kterém lze tvrdit, zda je pravdivý/nepravdivý IN již známe z přechozích příkladů dotazů ANY (ekvivalent SOME) ALL ANY(SOME), ALL lze použít s porovnávacími operátory: <, <=, >, >=, <>, = =SOME je ekvivalentní s IN <>SOME je ekvivaletní s NOT IN
25 Příklady (z knihy Pokorný: DB systémy): najdi zaměstnance, kteří mají vyšší plat než nějaký Drábek SELECT id_zam, prijmeni FROM ZAMESTNANEC WHERE plat > ANY (SELECT z.plat FROM ZAMESTNANEC z WHERE z.prijmeni = "Drábek");
26 ZAMĚSTNANEC ID_ZAM JMÉNO PŘÍJMENÍ PLAT 1 Josef Novák Jan Drábek Jiří Drábek Alena Novotná František Ponocný výsledkem poddotazu (platy Drábků) je množina { 10000, }
27 podmínku ve vnějším dotazu plat > ANY (SELECT ) splňují platy 15000, 20000, výsledek dotazu: 1 Novák 3 Drábek 4 Novotná Poznámka: ve výsledku mezi zaměstnanci budou přirozeně všichni Drábkové kromě toho, který má z Drábků nejnižší plat
28 najdi zaměstnance, kteří mají vyšší plat než všichni Drábkové SELECT id_zam, prijmeni FROM ZAMESTNANEC WHERE plat > ALL (SELECT z.plat FROM ZAMESTNANEC z WHERE z.prijmeni = "Drábek");
29 podmínku ve vnějším dotazu plat > ALL (SELECT ) splňuje plat výsledek dotazu: 4 Novotná
30 Kteří Drábkové mají mezi Drábky nejvyšší plat? SELECT id_zam, prijmeni FROM ZAMESTNANEC x WHERE x.prijmeni="drábek" AND x. plat >= ALL (SELECT z.plat FROM ZAMESTNANEC z WHERE z.prijmeni = "Drábek");
31 Predikát EXIST EXIST představuje dotaz na neprázdnost (resp. prázdnost ve tvaru NOT EXIST) nějaké množiny nabývá hodnoty true, je-li množina (např. výsledek dotazu) neprázdná
32 Predikát EXIST najdi čtenáře, kteří mají nějakou výpůjčku SELECT RC, PRIJMENI FROM CTENAR c WHERE EXIST (SELECT * FROM SI_VYPUJCIL v WHERE v.rc = c.rc);
33 dotaz lze formulovat také pomocí predikátu IN SELECT RC, PRIJMENI FROM CTENAR WHERE RC IN(SELECT RC FROM SI_VYPUJCIL);
34 Predikát LIKE LIKE používá se pro částečné porovnání řetězců lze použít zástupné znaky: % - 0 nebo více libovolných znaků _ - jeden libovolný znak
35 Predikát LIKE najdi čtenáře, jejichž příjmení začínají na "No" SELECT RC, PRIJMENI FROM CTENAR WHERE PRIJMENI LIKE "No%";
36 Predikát UNIQUE otestuje, zda v množině existují duplicity použití s poddotazem: UNIQUE(poddotaz)
37 Příklady (z knihy Pokorný: DB systémy): vypiš zaměstnance, přičemž ať vždy alespoň 3 pracují na stejné pozici SELECT id_zam, prijmeni, pozice FROM ZAMESTNANEC z1 WHERE NOT UNIQUE (SELECT z2.pozice FROM ZAMESTNANEC z2 WHERE z1.pozice = z2.pozice AND z1.id_zam <> z2.id_zam);
38 Množinové operace UNION sjednocení INTERSECTION průnik EXCEPT rozdíl aplikují se na poddotazy
39 Příklady (z knihy Pokorný: DB systémy): najdi filmy, kde hraje W. Allen nebo je režíroval SELECT jm_filmu FROM FILMY WHERE herec="allen" UNION SELECT jm_filmu FROM FILMY WHERE reziserá="allen";
40 Pohledy - VIEWS pohled = virtuální tabulka obsah pohledu není uložen v databázi jako tabulka představuje definici externího (uživatelského) schématu CREATE VIEW jmeno_pohledu [virt_jmeno_atr_1, virt_jmeno_atr_2, ] AS dotaz [WITH [CASCADE LOCAL] CHECK OPTION];
41 Pohledy - VIEWS jména virtuálních atributů nemusí být specifikována, pak přebírají se z dotazu WITH CHECK OPTION definuje pohled jako aktualizovatelný jde ho "měnit" definovat pohledy je vhodné, pokud se často dotazujeme na určitá data některé SŘBD umožňují definovat tzv. materializované pohledy, které se ukládají do DB jako tabulka
42 definujeme pohled: seznam čtenářů s příjmením Novák CREATE VIEW novaci AS SELECT * FROM CTENAR WHERE PRIJMENI = "Novák"; nad pohledem můžeme tvořit další dotazy: vybereme Nováky narozené před :
43 pro jednoduchost předpokládáme atribut dat_nar SELECT * FROM novaci WHERE DAT_NAR < ;
44 definujeme pohled: seznam čtenářů s počtem výpujček CREATE VIEW ctenari_vyp rc jm,pr,poc AS SELECT RC,JMENO,PRIJMENI,COUNT(PRIR_C) FROM CTENAR,SI_VYPUJCIL WHERE CTENAR.RC = SI_VYPUJCIL.RC GROUP BY CTENAR.RC;
45 Aktualizace pohledů aktualizace pohledu pomocí aktualizačních dotazů INSERT, UPDATE, DELETE aktualizace dat původních tabulek, je-li při definici pohledu dovoleno pomocí WITH CHECK OPTION pokud je pohled postaven nad jednou tabulkou, nevznikají závažné problémy je-li součástí pohledu klíč, lze provádět libovolnou aktualizační operaci, problém může způsobit např.: součástí pohledu není atribut s omezením NOT NULL, vkládáme nový řádek do pohledu není definována hodnota inkriminovaného sloupce
46 Aktualizace pohledů pokud je pohled postaven jako spojení dvou (více) tabulek, aktualizace znamená aktualizaci dat v těchto tabulkách může vést k problémům s klíčem, opatrně s těmito operacemi
47 Zrušení pohledu DROP VIEW jmeno_pohledu
Databázové systémy Cvičení 5
Databázové systémy Cvičení 5 Dotazy v jazyce SQL SQL jako jazyk pro manipulaci s daty Aktualizace dat v SQL úprava záznamů v relacích (tabulkách) vložení záznamu INSERT INTO oprava záznamu UPDATE vymazání
VíceDatabázové systémy Cvičení 5.3
Databázové systémy Cvičení 5.3 SQL jako jazyk pro manipulaci s daty SQL jako jazyk pro manipulaci s daty Aktualizace dat v SQL úprava záznamů v relacích (tabulkách) vložení záznamu INSERT INTO oprava záznamu
VíceDatabáze I. Přednáška 2
Databáze I Přednáška 2 Transformace E-R modelu do relačního modelu (speciality) zaměříme se na dva případy z předmětu Analýza a modelování dat reprezentace entitního podtypu hierarchie ISA reprezentace
VíceDatabázové systémy I
Databázové systémy I Přednáška č. 8 Ing. Jiří Zechmeister Fakulta elektrotechniky a informatiky jiri.zechmeister@upce.cz Skupinové a souhrnné dotazy opakování Obsah Pohledy syntaxe použití význam Vnořené
VíceDatabázové systémy. Cvičení 6: SQL
Databázové systémy Cvičení 6: SQL Co je SQL? SQL = Structured Query Language SQL je standardním (ANSI, ISO) textovým počítačovým jazykem SQL umožňuje jednoduchým způsobem přistupovat k datům v databázi
VíceInformační systémy 2008/2009. Radim Farana. Obsah. Dotazy přes více tabulek
5 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk SQL, Spojení tabulek, agregační dotazy, jednoduché a složené
VíceKurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc.
1 Kurz Databáze Zpracování dat Doc. Ing. Radim Farana, CSc. Obsah Druhy dotazů, tvorba dotazu, prostředí QBE (Query by Example). Realizace základních relačních operací selekce, projekce a spojení. Agregace
VíceDatabázové systémy Cvičení 5.2
Databázové systémy Cvičení 5.2 SQL jako jazyk pro definici dat Detaily zápisu integritních omezení tabulek Integritní omezení tabulek kromě integritních omezení sloupců lze zadat integritní omezení jako
VíceDatabáze I. Přednáška 4
Databáze I Přednáška 4 Definice dat v SQL Definice tabulek CREATE TABLE jméno_tab (jm_atributu typ [integr. omez.], jm_atributu typ [integr. omez.], ); integritní omezení lze dodefinovat později Definice
VíceDatabázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal
Databázové systémy - SQL * definice dat * aktualizace * pohledy Tomáš Skopal Osnova přednášky definice dat definice (schémat) tabulek a integritních omezení CREATE TABLE změna definice schématu ALTER TABLE
VíceKIV/ZIS cvičení 5. Tomáš Potužák
KIV/ZIS cvičení 5 Tomáš Potužák Úvod do SQL (1) SQL (Structured Query Language) je standardizovaný strukturovaný dotazovací jazyk pro práci s databází Veškeré operace v databázi se dají provádět pomocí
VíceJazyk SQL 2. Michal Valenta. Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c M.Valenta, 2011 BI-DBS, ZS 2011/12
Jazyk SQL 2 Michal Valenta Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c M.Valenta, 2011 BI-DBS, ZS 2011/12 https://edux.fit.cvut.cz/courses/bi-dbs/ M.Valenta (FIT ČVUT) Jazyk
VíceOperátory ROLLUP a CUBE
Operátory ROLLUP a CUBE Dotazovací jazyky, 2009 Marek Polák Martin Chytil Osnova přednášky o Analýza dat o Agregační funkce o GROUP BY a jeho problémy o Speciální hodnotový typ ALL o Operátor CUBE o Operátor
VíceInformační systémy ve zdravotnictví. 8. cvičení
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Informační systémy ve zdravotnictví 8. cvičení Ing. Petr Lukáš petr.lukas@nativa.cz Ostrava, 2014 Opakování Klauzule
VíceÚvod do databází. Modelování v řízení. Ing. Petr Kalčev
Úvod do databází Modelování v řízení Ing. Petr Kalčev Co je databáze? Množina záznamů a souborů, které jsou organizovány za určitým účelem. Jaké má mít přínosy? Rychlost Spolehlivost Přesnost Bezpečnost
Více6. blok část C Množinové operátory
6. blok část C Množinové operátory Studijní cíl Tento blok je věnován problematice množinových operátorů a práce s množinovými operátory v jazyce SQL. Čtenáři se seznámí s operátory, UNION, a INTERSECT.
VíceÚvod do databázových systémů
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Katedra informatiky Database Research Group Úvod do databázových systémů Cvičení 3 Ing. Petr Lukáš petr.lukas@vsb.cz
VíceDatabáze SQL SELECT. David Hoksza http://siret.cz/hoksza
Databáze SQL SELECT David Hoksza http://siret.cz/hoksza Osnova Úvod do SQL Základní dotazování v SQL Cvičení základní dotazování v SQL Structured Query Language (SQL) SQL napodobuje jednoduché anglické
VíceÚvod do databázových systémů
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů Cvičení 3 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování 4 fáze vytváření
VíceAnalýza dat a modelování. Přednáška 3
Analýza dat a modelování Přednáška 3 Hierarchický model Hierarchical Data Manipulation Language - HDML manipulace s daty (vyhledávání) pomocí příkazů HDML v hierarchickém SŘBD připomíná princip práce se
Více- sloupcové integritní omezení
CREATE TABLE - CREATE TABLE = definice tabulek a jejich IO - ALTER TABLE = změna definice schématu - aktualizace - INSERT INTO = vkládání - UPDATE = modifikace - DELETE = mazání CREATE TABLE Základní konstrukce
VíceÚvod do databázových systémů
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů Cvičení 5 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování K čemu se používají
VíceXMW4 / IW4 Pokročilé SELECT dotazy. Štefan Pataky
XMW4 / IW4 Pokročilé SELECT dotazy Štefan Pataky TOP, OFFSET-FETCH Konverze datových typů Logické funkce Práce s řetězci Poddotazy a množinové dotazy SQL Windowing Agenda TOP TOP omezení počtu vrácených
Více6. blok část B Vnořené dotazy
6. blok část B Vnořené dotazy Studijní cíl Tento blok je věnován práci s vnořenými dotazy. Popisuje rozdíl mezi korelovanými a nekorelovanými vnořenými dotazy a zobrazuje jejich použití. Doba nutná k nastudování
VíceÚvod do databázových systémů
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů Cvičení 4 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování Klauzule příkazu
VíceDotazování v relačním modelu a SQL
Databázové systémy Dotazování v relačním modelu a SQL Petr Krajča Katedra informatiky Univerzita Palackého v Olomouci Petr Krajča (UP) KMI/YDATA: Přednáška II. 14. říjen, 2016 1 / 35 Opakování Relační
Více5. blok Souhrnné a skupinové dotazy
5. blok Souhrnné a skupinové dotazy Studijní cíl Tento blok je věnován základům při vytváření souhrnných a skupinových dotazů s využitím agregačních funkcí SUM(), AVG(), MIN(), MAX() a COUNT() a klauzulí
VíceInformační systémy ve zdravotnictví. 10. cvičení
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Informační systémy ve zdravotnictví 10. cvičení Ing. Petr Lukáš petr.lukas@nativa.cz Ostrava, 2014 Opakování K čemu
VíceÚvod do databázových systémů 3. cvičení
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů 3. cvičení Ing. Petr Lukáš petr.lukas@nativa.cz Ostrava, 2012 Klauzule příkazu Klauzule
VíceB0M33BDT Technologie pro velká data. Supercvičení SQL, Python, Linux
B0M33BDT Technologie pro velká data Supercvičení SQL, Python, Linux Sergej Stamenov, Jan Hučín 18. 10. 2017 Osnova cvičení Linux SQL Python 2 SQL pro uživatele aneb co potřebuje znát a umět bigdatový uživatel:
VíceJazyk SQL slajdy k přednášce NDBI001
Jazyk SQL slajdy k přednášce NDBI001 Jaroslav Pokorný MFF UK, Praha pokorny@ksi.mff.cuni.cz Dotazovací jazyky 1 Přehled SQL92 1) jazyk pro definici dat, 2) interaktivní jazyk pro manipulaci dat, 3) jazyk
VíceDatabázové systémy a SQL
Databázové systémy a SQL Lekce 2 Daniel Klimeš Autor, Název akce 1 Operátory a funkce +,- Sčítání, odečítání *,/ Násobení, dělení =, , >=,
VíceDatabáze I. 5. přednáška. Helena Palovská
Databáze I 5. přednáška Helena Palovská palovska@vse.cz SQL jazyk definice dat - - DDL (data definition language) Základní databáze, schemata, tabulky, indexy, constraints, views DATA Databáze/schéma
VíceCo bude výsledkem mého SELECTu? RNDr. David Gešvindr MVP: Data Platform MCSE: Data Platform MCSD: Windows Store MCT
Co bude výsledkem mého SELECTu? RNDr. David Gešvindr MVP: Data Platform MCSE: Data Platform MCSD: Windows Store MCT david@wug.cz @gesvindr Logické zpracování dotazu Jazyk T-SQL je deklarativní Popisujeme,
VíceZákladní přehled SQL příkazů
Základní přehled SQL příkazů SELECT Základní použití Příkaz SELECT slouží k získání dat z tabulky nebo pohledu v požadované podobě. Získání všech řádků a sloupců z tabulky SELECT * FROM Person.Contact
VíceKapitola 4: SQL. Základní struktura
- 4.1 - Kapitola 4: SQL Základní struktura Množinové operace Souhrnné funkce Nulové hodnoty Vnořené poddotazy (Nested sub-queries) Odvozené relace Pohledy Modifikace databáze Spojené relace Jazyk definice
VíceGymnázium a Střední odborná škola, Rokycany, Mládežníků 1115
Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Číslo projektu: Číslo šablony: Název materiálu: Ročník: Identifikace materiálu: Jméno autora: Předmět: Tématický celek: CZ.1.07/1.5.00/34.0410
VíceDatabázové systémy a SQL
Databázové systémy a SQL Lekce 2 Daniel Klimeš Autor, Název akce 1 CREATE TABLE Vytvoření tabulky (ORACLE) DDL příkazem v grafickém prostředí CREATE TABLE jmeno ( text VARCHAR2(200), cislo NUMBER(9,1),
VíceInformační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL
4 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk SQL, datové typy, klauzule SELECT, WHERE, a ORDER BY. Doporučená
VíceMaterializované pohledy
Materializované pohledy Pavel Baroš, 2010 Obsah Materializované pohledy Co přináší? Řešení ostatních DBS syntaxe a semantika pro: Oracle, MS SQL, DB2 ostatní Možné řešení pro PostgreSQL PostgreSQL 2 Materializované
VíceDatabázové systémy. Dotazovací jazyk SQL - II
Databázové systémy Dotazovací jazyk SQL - II SELECT I SELECT FROM WHERE GROUP BY HAVING
VíceJaký je rozdíl v definicicíh VARCHAR2(20 BYTE) a VARCHAR2(20 CHAR):
Mezi příkazy pro manipulaci s daty (DML) patří : 1. SELECT 2. ALTER 3. DELETE 4. REVOKE Jaké vlastnosti má identifikující relace: 1. Je relace, která se využívá pouze v případě modelovaní odvozených entit
VíceDatabáze 2011/2012 SQL SELECT II. RNDr.David Hoksza, Ph.D.
Databáze 2011/2012 SQL SELECT II. RNDr.David Hksza, Ph.D. http://siret.cz/hksza Osnva Pkrčilé SQL IN, EXIST, ANY, ALL GROUP BY, HAVING CASE, COALESCE Mnžinvé perace Cvičení pkrčilé dtazvání v SQL Klauzule
VíceDotazovací jazyky I. Datová krychle. Soběslav Benda
Dotazovací jazyky I Datová krychle Soběslav Benda Obsah Úvod do problematiky Varianty přístupu uživatelů ke zdrojům dat OLTP vs. OLAP Datová analýza Motivace Vytvoření křížové tabulky Datová krychle Teorie
VíceKIV/ZIS - SQL dotazy. stáhnout soubor ZIS- 04_TestovaciDatabaze250312.accdb. SQL dotazy. budeme probírat pouze SELECT
KIV/ZIS - SQL dotazy stáhnout soubor ZIS- 04_TestovaciDatabaze250312.accdb SQL dotazy textové příkazy pro získání nebo manipulaci s daty SELECT - výběr/výpis INSERT - vložení UPDATE - úprava DELETE - smazání
VíceDatabázové systémy. Cvičení 3
Databázové systémy Cvičení 3 Normální formy relací normální formy relací definují určité vlastnosti relací, aby výsledná databáze měla dobré vlastnosti, např. omezena redundance dat snažíme se převést
Více7. Integrita a bezpečnost dat v DBS
7. Integrita a bezpečnost dat v DBS 7.1. Implementace integritních omezení... 2 7.1.1. Databázové triggery... 5 7.2. Zajištění bezpečnosti dat... 12 7.2.1. Bezpečnostní mechanismy poskytované SŘBD... 13
Více7. Integrita a bezpečnost dat v DBS
7. Integrita a bezpečnost dat v DBS 7.1. Implementace integritních omezení... 2 7.1.1. Databázové triggery... 5 7.2. Zajištění bezpečnosti dat... 12 7.2.1. Bezpečnostní mechanismy poskytované SŘBD... 13
Více6. SQL složitější dotazy, QBE
6. SQL složitější dotazy, QBE Příklady : Veškeré příklady budou dotazy nad databází KONTAKTY nebo KNIHOVNA nebo FIRMA Databáze KONTAKTY OSOBA (Id_osoba, Příjmení, Jméno, Narození, Město, Ulice, PSČ) EMAIL
VíceJazyk S Q L základy, příkazy pro práci s daty
Jazyk S Q L základy, příkazy pro práci s daty Základní pojmy jazyk množina řetězců nad abecedou gramatika popisuje syntaxi výrazů jazyka pravidla, jak vytvářet platné řetězce jazyka. dotazovací jazyk je
Více2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE
2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE Studijní cíl Tento blok je věnován základní syntaxi příkazu SELECT, pojmům projekce a restrikce. Stručně zde budou představeny příkazy
VíceDotazy v SQL. Výraz relační algebry R1( )[A1,A2,...,Aj] lze zapsat takto: SELECT A1,A2,...,Aj FROM R1 WHERE. Výraz (R1, R2... Rk)( )[A1,A2,...
Jazyk SQL 1 Přehled SQL 1) jazyk pro definici dat (DDL), 2) jazyk pro manipulaci dat (DML), 3) jazyk pro definice pohledů 4) jazyk pro definice IO 5) jazyk pro přiřazení přístupových práv (DCL) 6) řízení
VíceSQL. strukturovaný dotazovací jazyk. Structured Query Language (SQL)
SQL strukturovaný dotazovací jazyk Structured Query Language (SQL) SQL - historie 1974-75 - IBM - 1.prototyp - SEQUEL od 1979 - do praxe - ORACLE (1979) IBM - SQL/DS (1981), DB/2 (1983) postupně přijímán
VíceDatabázové systémy a SQL
Databázové systémy a SQL Daniel Klimeš Autor, Název akce 1 About me Daniel Klimeš Vzdělání: Obecná biologie PGS: onkologie Specializace: klinické databáze Databáze ORACLE klimes@iba.muni.cz Kotlářská 2,
VíceKIV/ZIS cvičení 6. Tomáš Potužák
KIV/ZIS cvičení 6 Tomáš Potužák Pokračování SQL Klauzule GROUP BY a dotazy nad více tabulkami Slučování záznamů do skupin (1) Chceme zjistit informace obsažené ve více záznamech najednou Klauzule GROUP
VíceJazyk SQL databáze SQLite. připravil ing. petr polách
Jazyk SQL databáze SQLite připravil ing. petr polách SQL - úvod Structured Query Language (strukturovaný dotazovací jazyk 70. léta min. století) Standardizovaný dotazovací jazyk používaný pro práci s daty
VíceJazyk SQL. Jaroslav Pokorný MFF UK, Praha J. Pokorný 1
Jazyk SQL Jaroslav Pokorný MFF UK, Praha pokorny@ksi.ms.mff.cuni.cz J. Pokorný 1 Přehled SQL92 1) jazyk pro definici dat, 2) interaktivní jazyk pro manipulaci dat, 3) jazyk pro manipulaci dat v hostitelské
VíceGymnázium a Střední odborná škola, Rokycany, Mládežníků 1115
Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Číslo projektu: Číslo šablony: Název materiálu: Ročník: Identifikace materiálu: Jméno autora: Předmět: Tématický celek: Anotace: CZ.1.07/1.5.00/34.0410
VíceDatabázové systémy. Datová integrita + základy relační algebry. 4.přednáška
Databázové systémy Datová integrita + základy relační algebry 4.přednáška Datová integrita Datová integrita = popisuje pravidla, pomocí nichž hotový db. systém zajistí, že skutečná fyzická data v něm uložená
VíceJazyk SQL 1. Michal Valenta. Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c Michal Valenta, 2012 BI-DBS, ZS 2011/12
Jazyk SQL 1 Michal Valenta Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c Michal Valenta, 2012 BI-DBS, ZS 2011/12 https://edux.fit.cvut.cz/courses/bi-dbs/ Michal Valenta (FIT
VíceSada 1 - PHP. 15. Výběr dat z databáze. Příkaz SELECT
S třední škola stavební Jihlava Sada 1 - PHP 15. Výběr dat z databáze. Příkaz SELECT Digitální učební materiál projektu: SŠS Jihlava šablony registrační číslo projektu:cz.1.09/1.5.00/34.0284 Šablona: III/2
VíceNávrh a tvorba WWW stránek 1/14. PHP a databáze
Návrh a tvorba WWW stránek 1/14 PHP a databáze nejčastěji MySQL součástí balíčků PHP navíc podporuje standard ODBC PHP nemá žádné šablony pro práci s databází princip práce s databází je stále stejný opakované
VíceMS Access Dotazy SQL
MS Access Dotazy SQL Dotaz SELECT Michal Nykl Materiály pro cvičení KIV/ZIS 2012 Červeně značené výsledky odpovídají souboru cv4_testovacidatabaze250312.accdb Dotaz SELECT - struktura SELECT [ DISTINCT
VíceMarian Kamenický. Syntea software group a.s. marian.kamenicky. kamenicky@syntea.cz. MFFUK Praha 2012/13
Datové a procesní modely Relační databáze Přednáška 5 Marian Kamenický Syntea software group a.s. marian.kamenicky kamenicky@syntea.cz MFFUK Praha 2012/13 1 Poddotazy OsoReg Jm Poh St Pepa m CZ Franz m
VíceDotazy tvorba nových polí (vypočítané pole)
Téma 2.4 Dotazy tvorba nových polí (vypočítané pole) Pomocí dotazu lze také vytvářet nová pole, která mají vazbu na již existující pole v databázi. Vznikne tedy nový sloupec, který se počítá podle vzorce.
VíceDatabáze. Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu. Bedřich Košata
Databáze Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu Bedřich Košata K čemu jsou databáze Ukládání dat ve strukturované podobě Možnost ukládat velké množství dat
VíceMulti-dimensional expressions
Multi-dimensional expressions Query sent to cube / returned from cube jazyk pro multidimenzionální dotazy ekvivalent SQL pro multidimenzionální databáze je jen prostředkem pro přístup k datům jako SQL
VíceObchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava
Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava Šablona 32 VY_32_INOVACE_038.ICT.34 Tvorba webových stránek SQL stručné minimum OA a JŠ Jihlava, VY_32_INOVACE_038.ICT.34 Číslo
VíceMySQL. mysql> CREATE DATABASE nova CHARACTER SET latin2 COLLATE latin2_czech_cs; Query OK, 1 row affected (0.02 sec)
MySQL přes MySQL Command Line Client Zobrazení existujících databází mysql> SHOW DATABASES; Database test Vytvoření databáze mysql> CREATE DATABASE krouzek; Query OK, 1 row affected (0.00 sec) mysql> SHOW
VíceKIV/ZIS - SELECT, opakování
KIV/ZIS - SELECT, opakování soubor 4_databaze.accdb (lze použít ten z minula) http://home.zcu.cz/~krauz/zis/4_databaze.accdb minule: SELECT FROM WHERE ORDER BY SELECT sloupce jaké sloupce chceme vybrat
VíceDatabázové systémy. * relační kalkuly. Tomáš Skopal. - relační model
Databázové systémy Tomáš Skopal - relační model * relační kalkuly Osnova přednášky relační kalkuly doménový n-ticový Relační kalkuly využití aparátu predikátové logiky 1. řádu pro dotazování rozšíření
VíceOsnova je orientační pro FIT, u FEKTu se dá předpokládat, že budou zohledněny předchozí znalosti studentů, kde většina s databází nikdy přímo
1 Osnova je orientační pro FIT, u FEKTu se dá předpokládat, že budou zohledněny předchozí znalosti studentů, kde většina s databází nikdy přímo nepracovala. 2 3 4 5 6 7 8 9 10 11 12 Autor zadání je doc.
VíceMateriál ke cvičením - SQL
Materiál ke cvičením - 1. Stručná syntaxe vybraných příkazů jazyka (detailní syntaxe příkazů je uvedena on-line manuálech přístupných z prostředí sítě VŠE) SELECT výběr a zobrazení hodnot z databáze: SELECT
VíceDATA CUBE. Mgr. Jiří Helmich
DATA CUBE Mgr. Jiří Helmich Analytické kroky formulace dotazu analýza extrakce dat vizualizace Motivace n-sloupcová tabulka v Excelu vs. sloupcový graf Dimensionality reduction n dimenzí data obecně uspořádána
VíceRELAČNÍ DATABÁZOVÉ SYSTÉMY
RELAČNÍ DATABÁZOVÉ SYSTÉMY VÝPIS KONTROLNÍCH OTÁZEK S ODPOVĚDMI: Základní pojmy databázové technologie: 1. Uveďte základní aspekty pro vymezení jednotlivých přístupů ke zpracování hromadných dat: Pro vymezení
VíceVzorové příklady SQL. Tabulka: Kniha CREATE TABLE kniha (id INTEGER, název VARCHAR(50), PRIMARY KEY (id))
Vzorové příklady SQL Tabulka: Kniha CREATE TABLE kniha název VARCHAR(50, PRIMARY KEY (id Tabulka: Autoři CREATE TABLE autoři jméno VARCHAR(10, příjmení VARCHAR(20, titul VARCHAR(7, prostřední VARCHAR(10,
VíceDJ2 rekurze v SQL. slajdy k přednášce NDBI001. Jaroslav Pokorný
DJ2 rekurze v SQL slajdy k přednášce NDBI001 Jaroslav Pokorný 1 Obsah 1. Úvod 2. Tvorba rekurzívních dotazů 3. Počítaní v rekurzi 4. Rekurzívní vyhledávání 5. Logické hierarchie 6. Zastavení rekurze 7.
VícePRG036 Technologie XML
PRG036 Technologie XML Přednáší: Irena Mlýnková (mlynkova@ksi.mff.cuni.cz) Martin Nečaský (necasky@ksi.mff.cuni.cz) LS 2010 Stránka přednášky: http://www.ksi.mff.cuni.cz/~mlynkova/prg036/ 1 Osnova předmětu
VíceSQL - SELECT. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 7
SQL - SELECT Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa ních technologií ƒeské vysoké u ení technické v Praze c Michal Valenta, 2010 Databázové systémy BI-DBS ZS 2010/11,
VíceMS Access Dotazy SQL
MS Access Dotazy SQL Dotaz SELECT opakování ŘEŠENÍ Michal Nykl Materiály pro cvičení KIV/ZIS 2012 Červeně značené výsledky odpovídají souboru cv6_testovacidb-pekarna150412.accdb Pro některé z otázek lze
VíceSII - Informatika. 1. Atribut relace, jehož hodnota jednoznačně určuje prvek v jiné relaci, se nazývá:
SII - Informatika Způsob vyhodnocení: Při vyhodnocení budou za nesprávné odpovědi strhnuty body. 1. Atribut relace, jehož hodnota jednoznačně určuje prvek v jiné relaci, se nazývá: a) sekundární klíč b)
VíceStructured Query Language SQL
Structured Query Language SQL Spouště DML Řízení transakcí Vložené a dynamické SQL SQL DDL Spouště Integritní omezení Bezpečnost Přístupová práva SQL SEQUEL-XRM, IBM v roce 1974 Neprocedurální jazyk říkáme
Více3. Jazyky relačních databázových systémů
3. Jazyky relačních databázových systémů 3.1. Tabulky ilustračního příkladu - Spořitelna... 3 3.2. Jazyk SQL... 5 3.2.1. Úvod... 5 3.2.2. Definice dat... 7 3.2.3. Manipulace s daty... 14 3.2.4. Pohledy...
VícePL/SQL. Jazyk SQL je jazykem deklarativním, který neobsahuje procedurální příkazy jako jsou cykly, podmínky, procedury, funkce, atd.
PL/SQL Jazyk SQL je jazykem deklarativním, který neobsahuje procedurální příkazy jako jsou cykly, podmínky, procedury, funkce, atd. Rozšířením jazyka SQL o proceduralitu od společnosti ORACLE je jazyk
Více8.2 Používání a tvorba databází
8.2 Používání a tvorba databází Slide 1 8.2.1 Základní pojmy z oblasti relačních databází Slide 2 Databáze ~ Evidence lidí peněz věcí... výběry, výpisy, početní úkony Slide 3 Pojmy tabulka, pole, záznam
VíceVirtuální privátní databáze
Virtuální privátní databáze umožňuje nastavit zásady v podobě predikátu (klauzule WHERE) připojených ke všem dotazům, které uživatelé zadávají do DB zabezpeční se vztahuje na data, nikoliv na aplikaci
VíceStručný obsah. část III Aktualizace dat Kapitola 10: Aktualizace databáze 257 Kapitola 11: Integrita dat 275 Kapitola 12: Zpracování transakcí 307
Stručný obsah část I Přehled jazyka SQL Kapitola 1: Úvod 27 Kapitola 2: Stručný úvod do jazyka SQL 37 Kapitola 3: Jazyk SQL z širšího pohledu 45 Kapitola 4: Relační databáze 69 Část II Získávání dat Kapitola
VíceJazyk SQL 3 - DML, DDL, TCL, DCL
Jazyk SQL 3 - DML, DDL, TCL, DCL Michal Valenta Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c Michal Valenta, 2012 BI-DBS, ZS 2012/13 https://edux.fit.cvut.cz/courses/bi-dbs/
VíceGymnázium a Střední odborná škola, Rokycany, Mládežníků 1115
Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Číslo projektu: Číslo šablony: Název materiálu: Ročník: Identifikace materiálu: Jméno autora: Předmět: Tématický celek: Anotace: CZ.1.07/1.5.00/34.0410
VíceŘešené příklady STUDENT(RČ, JMÉNO, SPECIALIZACE) PŘEDMĚT(KÓD, NÁZEV, SYLLABUS, GARANT) ZÁPIS(RČ, KÓD, SEMESTR, ZNÁMKA)
Řešené příklady Použijeme především příklady z kapitoly 5. Mějme databázi studentů a předmětů, na které se zapisují a které absolvují. Databáze je realizována třemi relacemi se schematy (pozn. primární
VíceKapitola 6: Omezení integrity. Omezení domény
- 6.1 - Omezení domény Referenční integrita Aserce Spouštěče (Triggers) Funkční závislosti Kapitola 6: Omezení integrity Omezení domény Omezení integrity zabraňují poškození databáze; zajišťují, že autorizované
VíceFormální sémantika SQL dotazování
Formální sémantika SQL dotazování Elina Hazaran Zuzana Vytisková 6.11. 2012 podle M. Negri, G. Pelagatti, L. Sbattela, 1991 Základní pojmy Formální logický model Pravidla pro překlad SQL dotazů do tohoto
VíceFakulta elektrotechniky a informatiky Databázové systémy 2. Leden 2010 souhrn. Červené dobře (nejspíš), modré možná
ZKOUŠKOVÉ TESTY Leden 2010 souhrn Červené dobře (nejspíš), modré možná Pomocí kterého databázového objektu je implementován ATRIBUT z konceptuálního modelu? sloupec referenční omezení index tabulka Omezení
Více3. Jazyky relačních databázových systémů
3. Jazyky relačních databázových systémů 3.1. Tabulky ilustračního příkladu - Spořitelna... 3 3.2. Jazyk SQL... 5 3.2.1. Úvod... 5 3.2.2. Definice dat... 7 3.2.3. Manipulace s daty... 14 3.2.4. Pohledy...
VíceInnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) CSV v textovém souboru ve formátu hodnot oddělených čárkou
MySQL Typy tabulek Storage Engines MyISAM defaultní, neumí transakce, umí fulltext InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) MEMORY (HEAP) v paměti; neumí transakce ARCHIVE velké množství
VíceDatabáze I. Přednáška 7
Databáze I Přednáška 7 Objektové rozšíření SQL Objektově relační databáze SQL:1999 objektové rozšíření SQL vztahuje se k objektově relačním databázovým systémům ukládají objekty do relační databáze umožňují
VíceOQL. (Object Query Language) Michal Bartoš Filip Bureš
OQL (Object Query Language) Michal Bartoš Filip Bureš Obsah (1) ODMG Základní vlastnosti OQL Struktura dotazu Datové typy Práce s objekty Tvorba objektů Objektová databáze Rozdíly oproti relační databázi:
VíceZáklady informatiky. 08 Databázové systémy. Daniela Szturcová
Základy informatiky 08 Databázové systémy Daniela Szturcová Problém zpracování dat Důvodem je potřeba zpracovat velké množství dat - evidovat údaje o nějaké skutečnosti. o skupině lidí (zaměstnanců, studentů,
VíceNovinky v PostgreSQL 9.4. Tomáš Vondra, 2ndQuadrant
Novinky v PostgreSQL 9.4 Tomáš Vondra, 2ndQuadrant (tomas@2ndquadrant.com) http://blog.pgaddict.com (tomas@pgaddict.com) vývojáři JSONB aggregate expressions (FILTER) SELECT a, SUM(CASE WHEN b < 10 THEN
VícePoužití databází na Webu
4IZ228 tvorba webových stránek a aplikací Jirka Kosek Poslední modifikace: $Date: 2010/11/18 11:33:52 $ Obsah Co nás čeká... 3 Architektura webových databázových aplikací... 4 K čemu se používají databázové
Více