Zadejte hledaný výraz...
Jakub Glos
Webtrh.cz
Vývoj webových stránek na WordPressu a proklientský přístup pro freelancery
Třídenní infromacemi nabitý prezenční + online kurz v Praze od Webtrhu pouze za 2 871 Kč
Více informací

MySQL – Select

Denis Ulmann
verified
rating uzivatele
(9 hodnocení)
3. 11. 2012 12:00:51
Zdravím,
moc takové složité dotazy v praxi nepoužívám, vždy najdu přes PHP řešení, ve kterém si ty vytažená data upravuji, ale tady budu potřebovat pomoct.
V tabulce `tabulka` mám `data1` a potřebuji vytáhnout data1, které se vyskytují více, než 1x stejné, tzn. select * from tabulka where data1 = 'x', mysql vrátí 2 výsledky, tak tyto data potřebuji, v případě, že vrátí 1 výsledek, tak to nechat jak je - to mě nezajímá.
Přes php bych to zase řešil selectem jednotlivých, ve while kontroloval další a potom počítal kolik jich celkem je, ale tabulka stále expanduje a až tam toho bude hodně, tak by script běžel několik sekund a to já nechci (nemluvě o zátěži).
Díky moc za odpovědi!
3. 11. 2012 12:00:51
https://webtrh.cz/diskuse/mysql-select/#reply827541
Jirka
verified
rating uzivatele
(74 hodnocení)
3. 11. 2012 12:03:49
Jestli používáte klasické mySQL funkce, tak to co potřebujete se jmenuje mysql_num_rows
3. 11. 2012 12:03:49
https://webtrh.cz/diskuse/mysql-select/#reply827540
Denis Ulmann
verified
rating uzivatele
(9 hodnocení)
3. 11. 2012 12:06:56
Já se asi nevyjádřil přesně, moje chyba.
Potřebuji to vytahovat mezi hodně daty, tzn, že bude v `tabulka` přes 10.000 záznamů a já potřebuji vytáhnout ty, které se vyskytují více, jak 1x.
3. 11. 2012 12:06:56
https://webtrh.cz/diskuse/mysql-select/#reply827539
Jirka
verified
rating uzivatele
(74 hodnocení)
3. 11. 2012 12:15:31
pak bych to rozdělil na dva dotazy:
1) SELECT count(*) FROM tabulka WHERE data1 = 'x' GROUP BY data1 - vrátí počet záznamů s data1 == 'x'
2) když budou 2 a více, tak klasický select
3. 11. 2012 12:15:31
https://webtrh.cz/diskuse/mysql-select/#reply827538
qwertr
verified
rating uzivatele
(7 hodnocení)
3. 11. 2012 12:21:16
Potrebujes asi nieco taketo
Vytiahne ti riadky ktore maju rovnaku hodnotu v stlpci1 a stlpci 2 a je ich v skupine viacej ako 1
chcem vytiahnut hodnoty x, ktore sa vyskytuju viacej ako raz
chcem vytiahnut vsetky riadky v ktorej je dana hodnota x napr
3. 11. 2012 12:21:16
https://webtrh.cz/diskuse/mysql-select/#reply827536
Denis Ulmann
verified
rating uzivatele
(9 hodnocení)
3. 11. 2012 12:21:16
Co když X je proměnná, X neznám a je v každém záznamů jiné a jen někde se vyskytuje 2x a více a to potřebuji selectnout.
3. 11. 2012 12:21:16
https://webtrh.cz/diskuse/mysql-select/#reply827537
Jirka
verified
rating uzivatele
(74 hodnocení)
3. 11. 2012 12:26:44
Napsal denoy;865690
Co když X je proměnná, X neznám a je v každém záznamů jiné a jen někde se vyskytuje 2x a více a to potřebuji selectnout.
pak s tím, co píše qwertr :
SELECT data1 FROM tabulka GROUP BY data1 HAVING count(*) > 1 - vrátí výpis hodnot data1, které se vyskytují více jak 1
3. 11. 2012 12:26:44
https://webtrh.cz/diskuse/mysql-select/#reply827535
Denis Ulmann
verified
rating uzivatele
(9 hodnocení)
3. 11. 2012 13:26:42
Jop díky, to je to, co jsem potřeboval :)
3. 11. 2012 13:26:42
https://webtrh.cz/diskuse/mysql-select/#reply827534
Pro odpověď se přihlašte.
Přihlásit