MySQL - jedinečné adresy

C++, C#, Visual Basic, Delphi, Perl a ostatní

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod www598 8. 9. 2006 19:11

Jakým příkazem zjistím počet jedinečných adres(jedno čeho) v MySQL databazi?

//khihihi: upraveny povodne zmasakrovany nazov threadu
www598
Kolemjdoucí
Uživatelský avatar

Odeslat příspěvekod Kryštof Korb 8. 9. 2006 19:14

moc nechápu ten dotaz, ale jestli chceš něco vyhledat, mělo by to jít normálně buď SQL příkazem enbo přes PHPMyAdmin
near field | Úplně všechno o NFC.
Kryštof Korb
VIP uživatel
Uživatelský avatar

Odeslat příspěvekod www598 8. 9. 2006 19:29

tak jinak
mám tabulku:
-----------------------
uživatel l adresa
------------------------
Franta l Praha
Tom l Praha
Honza l Olomouc
Pepa l Brno
Mira l Praha
Olda l Karviná
--------------------

A jakým SQL dotazem zjistím, z kolika měst jsou uživatelé (ze 4 měst )
www598
Kolemjdoucí
Uživatelský avatar


Odeslat příspěvekod www598 8. 9. 2006 19:56

to K8 dík, ale anglicky umím minimálně a s MySQL taky začínám, tak jestli by jsi mi mohl nahodit, aspoň který je to odstavec, či ještě lépe vypsat. do přesné podoby si už to "snad" doplním.
www598
Kolemjdoucí
Uživatelský avatar

Odeslat příspěvekod K8 8. 9. 2006 20:04

SELECT adresa FROM tabulka GROUP BY adresa;
tim se ziska seznam jedinecnych mist a zalezi na verzi MySQL, jestli uz umi umi vnorene SELECTY, aby se to znovu sezkupilo a tim se zjistil pocet mest, nebo vyuzit funkce php mysql_num_rows(), ktera k tomuto dotazu vrati pocet radku ve vysledku
K8
Pokročilý

Odeslat příspěvekod Z@chi 8. 9. 2006 20:10

nebo treba:
Kód: Vybrat vše
SELECT DISTINCT adresa FROM tabulka;

a mas vybrane vsechny jedinecne adresy. DISTINCT odstrani duplicitni hodnoty.
Z@chi
Junior
Uživatelský avatar

Odeslat příspěvekod .ParadoX. 8. 9. 2006 20:12

Kód: Vybrat vše
SELECT COUNT(DISTINCT adresa) FROM tabuka;
<? echo "hello world"; ?>
.ParadoX.
Mírně pokročilý
Uživatelský avatar

Odeslat příspěvekod babca 8. 9. 2006 20:14

group by pouzij jen kdyz budes chtit vedet i pocet lidi v danem meste

Kód: Vybrat vše
SELECT adresa, count(adresa) AS pocet_v_danem_meste FROM tabulka GROUP BY adresa


--
To .ParadoX.: zapomnel si na AS
babčův HTPC pro rok 2011: AMD Zacate, spotřeba 16W@46°C při idle, just Google it
babca
Junior
Uživatelský avatar

Odeslat příspěvekod www598 8. 9. 2006 20:17

Jj, díky moc! Přesně tohle jsem potřeboval.
www598
Kolemjdoucí
Uživatelský avatar

Odeslat příspěvekod .ParadoX. 9. 9. 2006 20:33

babca píše:To .ParadoX.: zapomnel si na AS


kde? :) ja cerpal z dokumentace k mysql a ten priklad mi funguje :oops:
<? echo "hello world"; ?>
.ParadoX.
Mírně pokročilý
Uživatelský avatar

Odeslat příspěvekod babca 10. 9. 2006 09:57

Teď sem se dočetl, že použití DISTINCT je velice pomalé. Mnohem lepší prý použít GROUP BY.
Proto buď to mý řešení; nebo to paradoxovo - ale s použitím group by
Kód: Vybrat vše
SELECT COUNT(*) AS pocet FROM tabuka GROUP BY adresa

;)

--
To Paradox:
Kód: Vybrat vše
SELECT COUNT(DISTINCT adresa) FROM tabuka;

Ano, máš to správně.;)

Kdyby bylo třeba
Kód: Vybrat vše
SELECT COUNT(DISTINCT adresa) AS pocet FROM tabuka;

tak po volání $vysledek_pole = mysql_fetch_array($vysledek); by byl počet uložen v proměnné $vysledek_pole['pocet']
U tvýho příkladu je to složitě $vysledek_pole['COUNT(DISTINCT web)'] ... ;)
Ale to už předpokládám že dotyčný pracuje s php. Teď tak koukám, že se tu o php nikdo nezmínil... :P (Tak někdy přístě;))
babčův HTPC pro rok 2011: AMD Zacate, spotřeba 16W@46°C při idle, just Google it
babca
Junior
Uživatelský avatar

Odeslat příspěvekod K8 10. 9. 2006 17:55

babca píše:Teď sem se dočetl, že použití DISTINCT je velice pomalé. Mnohem lepší prý použít GROUP BY.t/quote]

To jsem si vyzkousel na vlastni kuzi, proto jsem sem daval reseni s GROUP BY (ale je pravda, ze u me se to projevilo v tabulce kde bylo cca 1 000 000 hodnot)
K8
Pokročilý


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků