Web Blog Lukáše Kaňky

NEVER GIVE UP

Menu
  • Má cesta do IT
  • O mně
Menu

SQL základy 1. část

Zveřejněno v 22 září, 20202 října, 2020 od administrator

Pokračujeme v seriálu základům Testingu. Do poručují si přečíst předchozí články Základy testování 1. část a Základy testování 2. část. Pokud vás bude zajímat pouze SQL nemusíte základy testovaní číst.

Všechny příklady jsem dělal v SQL Developer od Oracle který využívá Javu Oracle. Pokud budete chtít využít produktů Oracle je potřeba registrace a zdarma si je stáhnout, nabízí je pro Windows, Mac i Linux. Nebo můžete využit třeba MySQL nebo SQL od jiného výrobce. Rozdíly by oproti SQL Developer měli být minimální.

Vždy doporučuji používat poslední verze software.

Upozorňuji není to úplný návod jak vytvářet tabulky, ale hlavně pro testery a proti co chtějí umět používat SQL na vyhledávaní. Hlouběji do SQL se ponoříme v dalších článcích.

K dotazování jazykem SQL, pro tento článek jsem použil databázi z svého hostingu a z školení Acamar. Ale databázi si můžete i vytvořit na vlastním PC zcela jednoduše aniž by jste se museli někam přihlašovat. Více si můžete přečíst zde.

SQL základy 1. část:

Relační databáze

  • Skládá se z tabulek
  • Využívá dotazovací jazyk SQL
  • MySQL, Oracle atd.

SQL= Structured Query Language

SQL – DDL = Data Defintion Language – Create table, Drop table

          DML = Data Manipulation Language

>  není case sensitive – nerozlišuje malá a velká písmena

>  pro lepší čitelnost se doporučuje psát velkými písmeny

>  dotaz může být rozdělen na více řádků

>  čísla se píší normálně, text musí být v rovných uvozovkách ‘apostrof‘

>  každý příkaz končí středníkem ;

>  klíčové slovo jazyka SQL nesmí být název tabulky nebo sloupce

Datové typy

> NUMBER (p,s) – číslo, p = počet celých čísel, s = počet desetinných čísel  (2,1- 99,9)

> CHAR (n) – řetězec s pevnou délkou n, využívá se pro logické hodnoty 0/1, N/Y

> VARCHAR2 – řetězec, až n znaků

> DATE – datum 2017-01-01

> TIMESTAMP – datum a čas 2017-01-01 12:00:00

Primární klíč

  • Jednoznačný a jedinečný identifikátor řádků tabulky, standardně sloupce ID.
  • Název obvykle ID, generované sekvencí.
  • Může být, rodné číslo, číslo OP…….
  • Nejlepší uměle vytvořený klíč.

SQL základní příkazy

Tabulka uzivatel

IDJménoPrijmeniVek
1PavelNovák35
2JanaMalá27
  • INSERT – vložení řádku

   INSERT INTO <tabulka> (<sloupec>) VALUES (<hodnota>)

   INSERT INTO Uzivatel (ID, Jmeno, Prijmeni, Vek ) VALUES (4, ‘Jan’, ‘Svoboda’, 40);

  • UPDATE – změna řádku – změna/aktualizace řádku

   ! bez WHERE změní všechny řádky, WHERE – kde, podmínka !

   UPDATE <tabulka> SET <sloupec> = <hodnota> [WHERE <podminka>];

   UPDATE Uzivatel SET Vek=41 WHERE ID=3;

  • DELETE FROM – smazání řádku

    DELETE FROM <tabulka> [WHERE <podminka>];

    DELETE FROM Uzivatel WHERE ID=3;

*  SELECT – vyhledávání řádků

   SELECT <sloupce> FROM <tabulka>

   SELECT * FROM <uzivatel>; všechny sloupce v tabulce uživatel

   SELECT ID, Jmeno, Prijmeni, Vek FROM Uzivatel; vypíše sloupce podle kritérii v tabulce uživatel

* COMMIT – potvrdí změnu, musí být po INSERT, UPDATE, DELETE. Po SELECT zbytečné. 

                   Může se použít buď příkaz nebo tlačítko 

  • ROLLBACK – vrátí změnu k poslednímu COMMIT, buď příkaz nebo tlačítko
  • TRANSAKCE – více SQL příkazu na jednou, všechno nebo nic

                           na konci nutno potvrdit COMMIT

                           pokud dojde k chybě ROLLBACK   

  • WHERE – podmínka      
  • =, >, <, <=, >=
  • Je různo <> nebo !=  SELECT * FROM Uzivatel WHERE Vek<>35; 
  • IS NULL výběr řádku bez hodnoty ve sloupci SELECT * FROM Uzivatel WHERE Vek IS NULL;
  • IS NOT NULL výběr řádku z hodnotou ve sloupci 

                           SELECT * FROM Uzivatel WHERE Vek IS NOT NULL;

  • BETWEEN (Bitvín) : Mezi dvěmi hodnotami                                                                                   SELECT * FROM Uzivatel WHERE Vek BETWEEN 27 AND 40;

    Lze take zadat jako >= minimum AND <= maximum

–  LIKE – vyhledávání v textu % zástupný znak = žolík 

   SELECT * FROM Uzivatel WHERE Jmeno LIKE ‘Jan%‘; můzě třeba být ‘%a%’, najde vše v řádku jméno – jména co obsahují a.

  • IN přesně definované hodnoty
  • SELECT * FROM Uzivatel WHERE Jmeno IN ‘Pavel’; 
  • SELECT * FROM Uzivatel WHERE Vek IN (35, 27,40);
  • AND – logické A

               Musí být splněny obě podmínky

ANDNEPRAVDAPRAVDA
NEPRAVDANEPRAVDANEPRAVDA
PRAVDANEPRAVDA PRAVDA

 SELECT * FROM Uzivatel WHERE Vek >=27 AND Vek <=41; najde uživatele od 27 do 41 let.

  • OR – logické nebo 
  • Musí být splněna aspoň jedna podmínka
ORNEPRAVDAPRAVDA
NEPRAVDANEPRAVDAPRAVDA
PRAVDAPRAVDAPRAVDA

 SELECT * FROM Uzivatel WHERE Prijmeni=‚Svobodová‘OR Prijmeni=‚Malá‘;

Typ: nahraď Malá jiným přímením, aby bylo vidět OR.

Aritmické operace

  • sčítání +
  • odčítání –
  • násobení *
  • dělení /

SELECT Pocet*Cena_za_kus FROM Produkt; vynásobí cenu x počet

Agregační funkce

  • SUM – součet  SELECT SUM (Vek) FROM Uzivatel; sečte věk všech uživatelů
  • COUNT – počet řádků
  • AVG – průměr
  • MIN
  • MAX

SELECT MAX (Vek) FROM Uzivatel; – maximální věk

SELECT COUNT * FROM Uzivatel; – počet řádků v tabulce

SELECT COUNT (Vek) FROM Uzivatel; – vrátí počet ne nula hodnot uživatele

ORDER BY

  • řazení výsledku
  • ORDER BY <sloupec> ASC/DSEC
  • ASC – řazení vzestupně , defaultně, ale i tak by jsme měli psát
  • DESC – sestupně, nutné uvést

 SELECT Jmeno FROM Uzivatel ORDER BY Jmeno DESC; seřadí uživatele podle abecedy po zpátku

Alias sloupce

  • AS <sloupce>
  • Pro lepší pojmenování sloupců

SELECT COUNT (*) AS Pocet_radku FROM Uzivatel; hodnota COUNT se přepíše na Pocet_radku pro lepší orientaci.

SQL Developer

  • nástroj na prohlížení a provádění operací s databází

www.demo-1.sql-vyuka.cz – zde si můžete ozkoušet SQL

Časté pohovorové otázky

  • Napsat INSERT nebo UPDATE
  • Co je to primární klíč a zda je vhodné používat např. rodné číslo, email, telefonní číslo
  • Vyhledávání řádku bez hodnoty – IS NULL
  • Co je to transakce. Co se stane, když nastane v průběhu vykonávání transakce chyba – ROLLBACK

    

Summary
Author Rating
1star1star1star1star1star
Aggregate Rating
5 based on 1 votes

1 komentář u „SQL základy 1. část“

  1. Pingback: SQL dotazy na databázi na vašem disku – není problém. – Web Blog Lukáše Kaňky

Napsat komentář Zrušit odpověď na komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Hledat

Rubriky

  • Geo hry (9)
  • iMac (1)
  • iOS (1)
  • MacBook (1)
  • macOS (4)
  • Mobilní telefony (3)
  • Návody (11)
  • Recenze (7)
  • Sociální sítě (4)
  • Testing (4)
  • Testy (5)
  • Uncategorized (1)

Štítky

android aplikace Apple C.D.Payne cloud digiroman geocaching iMac iOS knihy koloběh MacBook Mládí v hajzlu munzee MySQL návody opencaching Oracle pc plurk Safari Sixteen socialní sítě software sony SQL telefony tester testování testy twitter waymarking wear

Archivy

  • Říjen 2020
  • Září 2020
  • Září 2018
  • Květen 2018
  • Září 2017
  • Listopad 2016
  • Září 2016
  • Říjen 2014
  • Září 2014
  • Srpen 2014
  • Duben 2014
  • Září 2013
  • Únor 2013
  • Duben 2012

Nejnovější komentáře

  • SQL základy 1. část – Web Blog Lukáše Kaňky: SQL dotazy na databázi ve vašem disku – není problém.
  • SQL dotazy na databázi na vašem disku – není problém. – Web Blog Lukáše Kaňky: SQL základy 1. část
  • SQL základy 1. část – Web Blog Lukáše Kaňky: Základy testování 2. část
  • SQL základy 1. část – Web Blog Lukáše Kaňky: Základy testování 1. část
  • Základy testování 2. část – Web Blog Lukáše Kaňky: Základy testování 1. část

Základní informace

  • Přihlásit se
  • Zdroj kanálů (příspěvky)
  • Kanál komentářů
  • Česká lokalizace

Tweets

Tweets by KankysCZ

toplist

© 2021 Web Blog Lukáše Kaňky | Powered by Minimalist Blog WordPress Theme