2. hodina, 2.3. 2016, Úvod do základních dotazů:  Hlavní cíl hodiny: Úvod do základních dotazů  Soubor s databází:   http://is.muni.cz/el/1421/jaro2016/VIKBB68/um/62039354/books_02_03.sqlite    Vysvětlené části:  1. Napsání základního dotazu v SQL.  2. Umět přemýšlet nad závorkami  3. Rozdíl mezi AND a OR  4. SELECT WHERE  5. LIMIT  6. ORDER  7. >, <, >=... !=    Počet vrácených výsledků vidíme v SQLite manageru v dolní liště.  Výrazy jako SELECT, WHERE, FROM píšeme kapitálkami. Atributy malými písmeny.    Základní SQL dotazování    1. Vypiš všechny knihy.  2. Které knihy byly napsány v roce 2000 ?  3. Které knihy byly napsány v jazyce ‘English’?  4. Které knihy byly napsány autorem ‘Drábek, Jan’?    AND    5. Které knihy byly napsány autorem ‘Drábek, Jan’ a v roce 2000?  6. Které knihy byly napsány v  jazyce ‘English’ a přeloženy do jazyka ‘Bulgarian’?  7. Které knihy byly napsány v  jazyce ‘English’ a přeloženy do jazyka ‘Czech’?  8. Které knihy byly napsány v  jazyce ‘English’ a přeloženy do jazyka ‘Czech’  a napsány v  roce 2000?  OR  9. Které knihy byly napsány v  jazyce ‘English’ nebo v jazyce ‘Czech’?  10. Které knihy byly napsány v  jazyce ‘English’ nebo v jazyce ‘Czech’ nebo vydána v roce  2000?  AND a OR + závorky!!  11. Které knihy byly napsány v  jazyce ‘English’ a přeloženy do jazyka Slovak nebo do  jazyka ‘Czech’? !!!!!!  12. Které knihy byly napsány v  jazyce ‘English’ a (přeloženy do jazyka Slovak nebo do  jazyka ‘Czech’ a ty (v jazyce ‘Czech’ zároveň vydány pouze roce 2000)?) !!!!!  OMEZENÍ DOTAZU  13. Které knihy byly napsány po roce 2000 ?  14. Které knihy byly napsány před rokem 2000 ?  15. Které knihy byly napsány po roce 2000 včetně v jazyce English?  16. Které knihy byly napsány před rokem 2000 včetně v jazyce English?  17. Které knihy nebyly napsány v jazyce English a zároveň přeloženy do jazyka “Czech” ?  OMEZENÍ VYPSANÝCH ATRIBUTŮ A POČTU VÝSLEDKŮ  18. Jaké je jméno knihy, která byla napsána v jazyce English, vypiš 5.  19. Jaké je jméno knihy a rok vydání knihy, která byla napsána v jazyce “Czech”, vypiš  nejstarší 2.  20. Vypiš knihy seřazeny podle autora sestupně.  21. Vypiš jméno a datum vydání nejstarší knihy originálně napsané v jazyce “Czech”.      NA TAKOVÉTO DOMÁCÍ PROCVIČOVÁNÍ, UKÁŽEME NA ZAČÁTKU HODINY, PŘIJĎTE  VČAS A DONESTE SI SPRÁVNÉ ZNĚNÍ DOTAZŮ!  1. Vypiš jméno, datum a originální jazyk knihy, která je nejstarší, napsaná v originále v  jazyce “English“, nebo v “German “a je přeložena do jazyka “Croatian“.  2. Vypiš jméno, datum a jazyk knihy, která je nejstarší, napsaná v originále v jazyce  “English“, nebo v “German“. Napsáne byla mezi roky 1950 a 2000 včetně.  3. Vypiš knihy vydavatele “Ikar”. Originální jazyk knih je “French” a zároveň country  “Slovakia”. Nebo je originální jazyk “English” a country “Czech Republic”. Vydání knih je  v roce 2000 nebo v roce 2012.   Mělo by vrátit 6 knih      ŘEŠENÍ  1. SELECT * FROM books;  2. SELECT * FROM books WHERE year = 2000;  Pro čísla nemusíme psát hledanou hodnotu, v tomto případě 2000, do uvozovek.  3. SELECT * FROM books WHERE language_original = "English"  Pro text, datum ale již SQL vyžaduje, aby text byl v uvozovkách. POZOR  NA TO!  4. SELECT * FROM books WHERE authors = "Drábek, Jan";  5. SELECT * FROM books WHERE authors = "Drábek, Jan" AND language_original =  "English";  6. SELECT * FROM books WHERE language_original = "English" AND  language_translation = "Bulgarian";  7. SELECT * FROM books WHERE language_original = "English" AND  language_translation = "Czech";  8. SELECT * FROM books WHERE language_original = "English" AND  language_translation = "Czech" AND year = 2000;  9. SELECT * FROM books WHERE language_original = "English" OR language_original =  "Czech";  10. SELECT * FROM books WHERE language_original = "English" OR language_original =  "Czech" OR year = 2000;  11.    ŠPATNĚ  SELECT * FROM books WHERE language_original = "English" AND  language_translation = "Slovak" OR language_translation = "Czech";  DOBŘE JE TO SE ZÁVORKAMI, NA POŘADÍ VÝRAZŮ V ZÁVORKÁCH NEZÁLEŽÍ  SELECT * FROM books WHERE language_original = "English" AND  (language_translation = "Slovak" OR language_translation = "Czech");  12. SELECT * FROM books WHERE language_original = "English" AND  (language_translation = "Slovak" OR (language_translation = "Czech" AND year =  2000));  13. SELECT * FROM books WHERE year > 2000;  14. SELECT * FROM books WHERE year < 2000;  15. SELECT * FROM books WHERE year >= 2000 AND language_original = "English";  16. SELECT * FROM books WHERE year <= 2000 AND language_original = "English";  17. SELECT * FROM books WHERE language_original != "English" AND  language_translation = "Czech";  18. SELECT title FROM books WHERE language_original = "English" LIMIT 5;  19. SELECT title, year FROM books WHERE language_original = "Czech" ORDER BY year  DESC LIMIT 2;  20. SELECT * FROM books ORDER BY authors DESC;  21. SELECT title, year FROM books WHERE language_original = "Czech" ORDER BY year  ASC LIMIT 1;