03.   SQL: O pár kroků blíže k  rocket science  Tomáš Hrabal    Cíle dnešní hodiny:    1. Aliasy  2. AND/OR a IN  3. NULL ?  4. BETWEEN  5. Agregační funkce  6. Pokročilejší práce s řetězci            Kontrolní otázky:  Nainstalovaný SQLite manager  Stažená databáze (stejná jako v druhé přednášce)   http://is.muni.cz/el/1421/podzim2015/VIKMB44/u m/59486102/books_02__03.sqlite          Takovéto domácí procvičování    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.                    NAJDI MI NEJSTARŠÍ  KNIHU.          NULL, NOT NULL  https://www.sqlite.org/nulls.html    Najdi mi nejstarší knihu   =  Najdi mi nejstarší knihu, která má vyplněné  datum vydání.    Najdi mi knihy bez originálního jazyka.      BETWEEN    Zadání z domácího úkolu:    Najdi mi knihy napsány mezi roky 1950 až 2000, včetně.    IN    Najdi mi knihy napsané v roce 1968 a 1989.        LIKE, NOT LIKE, %, %text%, %text, text%  při vyhledávání v textu budeme používat  právě LIKE!  Najdi mi knihy, které napsal author “Drábek, Jan”  Najdi mi knihy, které napsal author, se jménem končícím na  “jan”  Najdi mi knihy, které napsal author  jehož jméno neobsahuje  text “jan”  Najdi mi knihy, které napsal author  jehož jméno začíná na  “anderson”        AGREGAČNÍ FUNKCE  https://www.sqlite.org/lang_aggfunc.html  COUNT  MAX   MIN  AVG  SUM  ROUND              Rok vydání nejstarší knihy, která má vyplněné  datum vydání.                Počet knih v databázi, jejichž autor obsahuje  “jan”.    Suma let, průměrný věk vydání knihy  zaokrouhleno na celá čísla a počet takovýchto  knih v databázi. Knihy byly napsány v  originálním jazyce “Czech” ale jazyk přeložení  není “Czech”.      TEXTOVÉ FUNKCE, FUNKCE s  ČASEM a ALIAS  https://www.sqlite.org/lang_corefunc.html  https://www.sqlite.org/lang_datefunc.html    Najdi mi knihy seřazené podle délky názvu. Vypiš i s délkou  názvů.    Rok vydání nejmladší knihy která je vydána dříve než je  dnešní datum a vypiš dnešní datum.           Najdi mi titulek knihy, autora, délku názvu. Knihy jsou  seřazené podle délky názvu a jejich délka názvu je mezi 2 a  3. Vypiš jich 10 nejkratších.        Najdi mi titulek knihy, autory, délku názvu knihy a spojené  informace o zemi vydání, originálním jazyce, jazyce  přeložení JAKO "země, originální jazyk, jazyk přeložení".  Knihy jsou seřazeny podle délky názvu od nejdelšího. Vypiš  nejdelších 10.      Najdi mi autora a odstraň z jeho jména čárky  jako “Autoři”. Dalé vypiš prvních 10 znaků názvu  knihy jako “Zkrácený titulek”, rok vydání knihy  jako “Rok vydání”. Knihy napsal autor začínající  na “Drábek”, seřaď je podle data vydání od  nejstarší knihy.                  EXTRA PŘÍKLAD                Vypiš: Suma let, počet knih, průměrný věk knih (zaokroulený  a nezaokroulený­spočítaný)..   Najdi knihy, kde originální jazyk “French” a vydání mezi  rokem 1980 a zároveň kniha musí být více než 14 let stará  (od dnešního dne). Knihy byly přeloženy do jazyka začínající  na “czech” nebo do jazyka “slovakia” a musí mít vyplněného  autora. Vydavatel knihy nesmí obsahovat znak “a” nebo  znak “e”. Délka originálního názvu musí být kratší než délka  přeloženého názvu.