Anonymní profil peter – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil peter – Programujte.comAnonymní profil peter – Programujte.com

 

Příspěvky odeslané z IP adresy 2001:718:2601:1f7:5075:80...–

peter
MySQL › Vytvorenie tabuľky tímov
7. 4. 2015   #201132

"keď potrebujem tie tímy v poradí "
Razeni se dela pres ORDER BY, ne?

UNION Pouze spojuje SELECTy. Rikal jsi, ze to umis napsat kazde zvlast.

SELECT a AS X, b AS Y FROM ...
UNION 
SELECT c AS X, d AS Y FROM ...
UNION
SELECT e AS X, f AS Y FROM ...

https://dev.mysql.com/doc/refman/5.0/en/union.html
UNION [ALL | DISTINCT] = UNION nebo UNION ALL nebo UNION DISTINCT
UNION (prunik) - spoji a odstrani duplicitni zaznamy
UNION ALL (slouceni) - spoji a necha duplicitni zaznamy (to je dobre, kdyz chces delat COUNT. Kdyz potrebujes treba dve ruzne podminky pro dve ruzne tabulky, kazda vysype seznam id a ty potrebujes vypsat jen ty, ktere jsou v obou skupinach)
UNION DISTINCT (tusim rozdil, uz jsem to taky pouzil)

peter
MySQL › Vytvorenie tabuľky tímov
7. 4. 2015   #201124

Jo, tam by mozna bylo dobre pouzit alias, jinak to sql odmitne :) 

SELECT 
  b.name AS liga,
  c.name AS klub1,
  d.name AS klub2

A jestli jsou tam dva zaznamy, domaci a hoste, tak to mozna bude chtit ten select nejak upravit. Treba grupovanim podle id na vnitrnim selectu. Cili, neco jako  

SELECT 
  b.name,
  c.name,
  d.name
FROM
  (SELECT id_result,id_league,id_home_team,id_away_team ... WHERE xa.id_league = 1) a -- cili seznam id_result jako nova tabulka "a"
    LEFT JOIN league b ON b.id_league = a.id_league -- kdyz prejmenuji ten sloupec id v league
    LEFT JOIN club c ON c.id_club = a.id_home_team
    LEFT JOIN club d ON d.id_club = a.id_away_team
-- cili vysledek ted je z tabulky result a pripojuji k ni informace ze tri dalsich tabulek pro vypis
ORDER BY
  c.name ASC, - seradim to podle jmen klubu
  d.name ASC
peter
MySQL › Vytvorenie tabuľky tímov
7. 4. 2015   #201123

UNION, UNION ALL, ... - se spojuji vysledky selectu, ale musi souhlasit pocet sloupcu a i nazvy.

SELECTy musis tvorit podle toho, co se ma vyhledat. Delat univerzalni select na vsechny podminky obvykle vede k pomalemu hledani.

Sloupce je dobre pojmenovat stejne. Mas tabulku league, pak id bych nazval id_league. Mas tabulku result, mas v ni sloupec id_league. Jaka nahoda, oba se shoduji, takze to bude asi propojeni, ze? Kdezto, kdyz jeden nazves id a druhy id_league, tak podle nazvu tam neni viditelna spojitost.

Co te tedy zajima? Vsechny vysledky pro konkretni ligu?

SELECT 
  b.name,
  c.name,
  d.name
FROM
  result a
    LEFT JOIN league b ON b.id_league = a.id_league -- kdyz prejmenuji ten sloupec id v league
    LEFT JOIN club c ON c.id_club = a.id_home_team
    LEFT JOIN club d ON d.id_club = a.id_away_team
-- cili vysledek ted je z tabulky result a pripojuji k ni informace ze tri dalsich tabulek pro vypis
WHERE
  a.id_league = 1
ORDER BY
  c.name ASC, - seradim to podle jmen klubu
  d.name ASC
peter
PHP › Zaciatocnik s platbami
7. 4. 2015   #201122

Ted jsem si registroval Teso, hru. Ciste kreditku mi to nechtelo vzit. Ale kdyz jsem ji registroval na paypal, tak mi ji ta hra vzala. Takze, jestli muzu doporucit, sel bych pres paypal a jinou moznost bych ani nenabizel.

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý