Optimalizace webu (SQL)

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Optimalizace webu (SQL)

Příspěvek od CZechBoY »

Zdravim,
nemáte nějaký tip na web. stránky o optimalizace SQL příkazů a tabulek ?
Docela by mě zajímalo jak se mají správně dělat tabulky a jaké dotazy psát databázi.
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Uživatelský avatar
Savarkar
Level 1
Level 1
Příspěvky: 58
Registrován: 28 úno 2007 11:40

Re: Optimalizace webu (SQL)

Příspěvek od Savarkar »

O optimalizaci dotazu by se mel spravne starat optimalizator SRBD, ale musi se to nejak nastavovat. V prumernem pripade je optimalizator schopen vybrat efektivnejsi strategii vyhodnoceni dotazu.
Optimalizace tabulek, tim myslis co? Jedine o cem vim je, ze by tabulky mely obsahovat indexy nad atributy, na ktere se casto dotazuje. Samozrejme by tabulka mela byt vhodne navrzena atd, ale to uz souvisi s modelovanim db.
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: Optimalizace webu (SQL)

Příspěvek od CZechBoY »

Však tohle myslim, jaký indexy používat a kdy, k čemu je třeba INDEX a FULLTEXT ?
Jak se využívá pak těch indexů v tom dotazu a tak.
Četl jsem nějaký strašně složitý článek a vim z toho houby...
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Uživatelský avatar
Savarkar
Level 1
Level 1
Příspěvky: 58
Registrován: 28 úno 2007 11:40

Re: Optimalizace webu (SQL)

Příspěvek od Savarkar »

Staci googlit a najdes...

Kód: Vybrat vše

http://cs.wikipedia.org/wiki/Index_%28datab%C3%A1ze%29

http://www.root.cz/clanky/vyuziti-databazovych-indexu/
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: Optimalizace webu (SQL)

Příspěvek od CZechBoY »

Takže stačí volat WHERE nick = @czechboy
nebo je na tom něco složitějšího ?
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Uživatelský avatar
Stene
Level 6
Level 6
Příspěvky: 3124
Registrován: 11 úno 2009 15:44
Bydliště: Jihlava
Kontaktovat uživatele:

Re: Optimalizace webu (SQL)

Příspěvek od Stene »

SELECT * FROM `tabulka` WHERE sloupec like 'vyhledavane jmeno ve sloupci'

SELECT * FROM `tabulka` WHERE sloupec like '%vyhledavane jmeno ve sloupci%'
d1amond
člen HW spec týmu
Příspěvky: 16120
Registrován: 26 kvě 2008 10:14
Bydliště: České Budějovice

Re: Optimalizace webu (SQL)

Příspěvek od d1amond »

Začínal jsem s SQL (MS SQL) v práci před 2 lety a toto bylo dobré:
http://www.w3schools.com/SQl/default.asp" onclick="window.open(this.href);return false;
Pak samozřejmě MSDN.Další linky mám v práci.Případně poskytnu.
Na MySQL referenci nemám.

//Stene si za tu * plácne přes ruce :wink:
Nikdy neříkej, že to nejde, protože se najde někdo, kdo o tom neví a udělá to!
Chcete si nechat sestavit nový počítač?
Uživatelský avatar
Stene
Level 6
Level 6
Příspěvky: 3124
Registrován: 11 úno 2009 15:44
Bydliště: Jihlava
Kontaktovat uživatele:

Re: Optimalizace webu (SQL)

Příspěvek od Stene »

Co pak? Hvězdička tam nepatří?
d1amond
člen HW spec týmu
Příspěvky: 16120
Registrován: 26 kvě 2008 10:14
Bydliště: České Budějovice

Re: Optimalizace webu (SQL)

Příspěvek od d1amond »

Ale můžeš ji tam dát. Pokud doufáš že databáze nějak významně neporoste. * v select je první věc, která se odstraňuje při optimalizaci:) Je to brzda.Musí se používat opatrně.
Nikdy neříkej, že to nejde, protože se najde někdo, kdo o tom neví a udělá to!
Chcete si nechat sestavit nový počítač?
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: Optimalizace webu (SQL)

Příspěvek od CZechBoY »

* bere vše, já to znám...
myslel jsem jak zrychlit dotaz například výběr uživatele (když se přihlašuje)
takže
[syntax lang=sql]
SELECT nick,heslo FROM uzivatele WHERE nick='$nick' LIMIT 1;
[/syntax]
a sloupec nick je UNIKÁTNÍ takže jak bude vypadat ten příkaz ?
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Uživatelský avatar
Savarkar
Level 1
Level 1
Příspěvky: 58
Registrován: 28 úno 2007 11:40

Re: Optimalizace webu (SQL)

Příspěvek od Savarkar »

Urychlit to uz asi nejde, pokud pouzivas index nad atributem 'nick'. Kazdopadne si v tomhle dotazu pekne koledujes o sql injection. Radeji pouzij prepared statement nebo php funkci pro escapovani.
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: Optimalizace webu (SQL)

Příspěvek od CZechBoY »

[syntax lang=php]$nick = mysql_real_escape_string($_POST['nick']);[/syntax]
stačí ?
a nick má index UNIQUE, takže nijak dotazem to nezrychlim jo ?
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Odpovědět

Zpět na „Programování a tvorba webu“