Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 9. diel - MS-SQL krok za krokom: Dopyty cez viac tabuliek (JOIN)

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Posledné komentáre sú na spodnej časti poslednej stránky.
Avatar
David Hartinger
Vlastník
Avatar
Odpovedá na turlogh
David Hartinger:25.4.2014 10:36

Díky za hodnotný komentář. Mám dojem, že když jsem článek psal, dal jsem dotaz s WHERE do optimizeru a vygenerovalo to normálně INNER JOIN. Samozřejmě je otázka jak se na to lze spolehnout.

MrPabloz psal něco úplně jiného, říkal, že to místo wherování máme nazvat "podmínka", ne že to je špatně. A potom že místo termínu "dotaz přes více tabulek" musíme použít označení "spojování". Dále že už "dávno není outer join" a další nesmysly. Proto má reakce.

Článek jsem upravil tak, aby bylo jasné, že wherování je spíše teoretická záležitost.

Odpovedať
New kid back on the block with a R.I.P
Avatar
coells
Tvůrce
Avatar
Odpovedá na turlogh
coells:25.4.2014 12:29

Pokud mluvíme o T-SQL, pak podle krátké zmínky v dokumentaci výraz FROM a,b WHERE c opravdu odpovídá FROM a JOIN b ON c. Ale preferovaná metoda je použití joinů.

Více informací jsem hledal marně. Podle mého se jedná o cross-join, jenže ... optimalizace. Zkusí se využít nejlepší index, jaký je k dispozici a exekuční plán se pak opravdu tváří jako inner join.

Avatar
Neaktivní uživatel:7.9.2015 14:45

Nie som schopný niektoré veci hneď pochopiť z článku, nakoľko som totálny amatér. Ale tá diskusia je tiež užitočná. Vďaka že takto vmieňate názory..

Odpovedať
Neaktivní uživatelský účet
Avatar
Ondřej Pech
Člen
Avatar
Ondřej Pech:26.4.2016 9:50

Zajímalo by mě, jak napsat SQL kód, pokud mám jednu tabulku ve které zaznamenávám docházku a s druhou tabulkou (ve které mám jména návštěvníků) je schodný sloupec OsobniID ale jména mám uložená zvlášť Jméno a v dalším sloupci Příjmení. Potřeboval bych tedy podle Osobního ID vypsat jméno i příjmení.

tabulka dochazka např.
OsobniID PrvniPrichod DruhyPrichod
123456 0 1
123457 1 1

tabulka clenove např.
OsobniID Jmeno Prijmeni ...
123456 Jimmy Bourač ...
123457 Pepa Novák ...

a chtěl bych vypsat pro DruhyPrichod:
Jimmy Bourač - 1
Pepa Novák - 1

může mi někdo poradit prosím?

Avatar
Odpovedá na Ondřej Pech
Michal Štěpánek:26.4.2016 10:17
SELECT (clenove.Jmeno + ' ' + clenove.Prijmeni) AS Zamestnanec, dochazka.DruhyPrichod FROM dochazka INNER JOIN clenove ON clenove.OsobniID = dochazka.OsobniId WHERE dochazka.DruhyPrichod = '1'
Odpovedať
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Ondřej Pech
Člen
Avatar
Odpovedá na Michal Štěpánek
Ondřej Pech:26.4.2016 10:53

To by mohlo fungovat, díky :)

Avatar
Ondřej Krsička:30.4.2016 20:23

Jak napíšu dotaz, který v prvním sloupci vypíše uživatele a ve druhém počet jeho článků?

Avatar
Odpovedá na Ondřej Krsička
Michal Žůrek - misaz:30.4.2016 21:26
SELECT [Uzivatele].[Prezdivka], COUNT(*) AS [PocetClanku]
FROM [Clanky]
JOIN [Uzivatele] ON [Uzivatele].[Id] = [Clanky].[AutorId]
GROUP BY [Clanky].[AutorId],[Uzivatele].[Prezdivka];
Avatar
Odpovedá na Michal Žůrek - misaz
Ondřej Krsička:1.5.2016 10:54

Díky, akorát na posledním řádku nechápu to , [Uzivatele].[Prez­divka];

Posledné komentáre sú na spodnej časti poslednej stránky.
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 10 správy z 39.