[ Príspevkov: 20 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 11.12.07
Prihlásený: 13.06.24
Príspevky: 488
Témy: 139 | 139
Bydlisko: Bytča
NapísalOffline : 16.10.2009 15:21 | zlozitejsi select na vyber aj priemer

mam v tabulke ludi, ktory si pod svojim nickom do nej ukladaju svoje vyplaty ...

takze vyzera to nejako takto:

cislo nick_name den vyplaty vyplata
1. peter utorok 5.2 352
2. jakub streda 6.2 584
3. peter streda 6.3 - (nemal plat)
... atd.

mam spraveny vyber z DB a zobrazenie vsetkych nickov z Db takto:
Kód:
$OK2 = "SELECT DISTINCT nick_name FROM table ORDER by nick_name ";
$resultOK2 = mysql_query($poziadavkaOK2) or die ("Stala sa chyba v spojeni s DB");
while ($vysledokOK2 = mysql_fetch_array($resultOK2))

{
echo "".$vysledokOK2["nick_name"]." ";
}


proste mi vypise vsetkych ludi vedla seba, je to OK (rovnake mena len raz samozrejme)

potrebujem to dorobit tak, aby mi za kazdym vypisanym menom ukazalo v zatvorke jeho priemerny plat a rovnako pocet dni , kedy plat nemal, ako na to ? (ak clovek nema plat, v dany den zapise do DB len pomlcku - )


Offline

Skúsený užívateľ
Skúsený užívateľ
zlozitejsi select na vyber aj priemer

Registrovaný: 09.07.08
Prihlásený: 17.01.15
Príspevky: 1585
Témy: 96 | 96

Prečo pomlčku? Ty nepoužívaš dátové typy?


_________________
neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to!
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 11.12.07
Prihlásený: 13.06.24
Príspevky: 488
Témy: 139 | 139
Bydlisko: Bytča
Napísal autor témyOffline : 16.10.2009 15:58 | zlozitejsi select na vyber aj priemer

ake datove typy myslis ? proste je to jedno co tam je, ci pomlcka, ci nic, ale proste nieco tam musi byt, aby bolo jasne, ze v tom mesiaci nemal vyplatu


Offline

Správca fóra
Správca fóra
zlozitejsi select na vyber aj priemer

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51 | 51
Bydlisko: Bratislava
NapísalOffline : 16.10.2009 15:59 | zlozitejsi select na vyber aj priemer

Ak clovek nema vyplatu, tak v tabulke uvadzaj nulu namiesto pomlcky - typ stlpca si nastav na ciselny...

zrejme sa to bude dat zjednodusit, ale aspon pre zaciatok:
Kód:
SELECT nick_name AS meno, AVG(vyplata) AS priemer, (SELECT COUNT(*) FROM tbl WHERE vyplata=0 AND nick_name=meno) AS pocet FROM tbl GROUP BY meno


_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 11.12.07
Prihlásený: 13.06.24
Príspevky: 488
Témy: 139 | 139
Bydlisko: Bytča
Napísal autor témyOffline : 16.10.2009 16:14 | zlozitejsi select na vyber aj priemer

dakujem stenley, je to OK a teraz nieco podobne, pre mna zlozitejsie, pre teba urcite malina ...

takze podobna tabulka, kde su mena, ludia a pri kazdom cloveku je jeho zdravotna prehliadka, kde je len napisane OK, alebo KO (je alebo nie je v poriadku)

takze nieco ako

cislo meno datum stav

1. jano 25.2 OK
2. peter 24.2 KO
3. jano 23.9 KO
4. peter 5.6 KO
3. juraj 5.7 OK
....

a potrebujem spravit zobrazenie vsetkych mien, ako predtym s tym, ze pri kazdom mene bude aj napisane % hodnota ako na tom je. ta hodnota sa vypocita ako ( pocet OK+ pocet KO) / pocet OK samozrejme z hodnot pre dane meno.

ako buze vyzerat ten select ?


Offline

Skúsený užívateľ
Skúsený užívateľ
zlozitejsi select na vyber aj priemer

Registrovaný: 29.10.07
Prihlásený: 27.10.23
Príspevky: 1395
Témy: 30 | 30
Bydlisko: Bratislava
NapísalOffline : 16.10.2009 16:51 | zlozitejsi select na vyber aj priemer

Kód:
SELECT DISTINCT a.meno, (b.p_ok * 100) / ( b.p_ok + b.p_ko ) AS pomer
  FROM tabulka a, ( SELECT meno,
                           SUM(CASE WHEN stav = 'OK' THEN 1 ELSE 0 END ) AS p_ok,
                           SUM(CASE WHEN stav = 'KO' THEN 1 ELSE 0 END ) AS p_ko
                      FROM tabulka
                      GROUP BY meno ) AS b
  WHERE a.meno = b.meno


Ale jednoduchsie by asi bolo keby bol stav opat ciselna hodnota (0/1), potom by stacilo
Kód:
SELECT meno, (sum(stav) * 100) / count(meno) as pomer
FROM tabulka
GROUP BY meno


_________________
PC: OS: Windows 11 (64bit) CPU: AMD Ryzen 5 3600 GPU: ASUS TUF RTX3060Ti 8GB RAM: 16GB DDR4-3200MHz Kingston Fury MB: ASUS TUF Gaming B550M WIFI SSD: 1000GB PCIe M.2 NVME
Mobil: Xiaomi POCO F2 PRO
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 11.12.07
Prihlásený: 13.06.24
Príspevky: 488
Témy: 139 | 139
Bydlisko: Bytča
Napísal autor témyOffline : 16.10.2009 16:57 | zlozitejsi select na vyber aj priemer

musi tam byt OK a KO


Offline

Skúsený užívateľ
Skúsený užívateľ
zlozitejsi select na vyber aj priemer

Registrovaný: 29.10.07
Prihlásený: 27.10.23
Príspevky: 1395
Témy: 30 | 30
Bydlisko: Bratislava
NapísalOffline : 16.10.2009 17:00 | zlozitejsi select na vyber aj priemer

Som presvedceny o tom ze nemusi, ale OK ;) V tom pripade prva moznost


_________________
PC: OS: Windows 11 (64bit) CPU: AMD Ryzen 5 3600 GPU: ASUS TUF RTX3060Ti 8GB RAM: 16GB DDR4-3200MHz Kingston Fury MB: ASUS TUF Gaming B550M WIFI SSD: 1000GB PCIe M.2 NVME
Mobil: Xiaomi POCO F2 PRO
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 11.12.07
Prihlásený: 13.06.24
Príspevky: 488
Témy: 139 | 139
Bydlisko: Bytča
Napísal autor témyOffline : 16.10.2009 17:06 | zlozitejsi select na vyber aj priemer

inak to a.meno v mojom pripade bude a.nick_name ?


Offline

Skúsený užívateľ
Skúsený užívateľ
zlozitejsi select na vyber aj priemer

Registrovaný: 29.10.07
Prihlásený: 27.10.23
Príspevky: 1395
Témy: 30 | 30
Bydlisko: Bratislava
NapísalOffline : 16.10.2009 17:08 | zlozitejsi select na vyber aj priemer

baumax píše:
takze nieco ako
cislo meno datum stav


Ak to "meno" o ktorom si pisal ma byt nick_name, tak potom ano ;)


_________________
PC: OS: Windows 11 (64bit) CPU: AMD Ryzen 5 3600 GPU: ASUS TUF RTX3060Ti 8GB RAM: 16GB DDR4-3200MHz Kingston Fury MB: ASUS TUF Gaming B550M WIFI SSD: 1000GB PCIe M.2 NVME
Mobil: Xiaomi POCO F2 PRO
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 11.12.07
Prihlásený: 13.06.24
Príspevky: 488
Témy: 139 | 139
Bydlisko: Bytča
Napísal autor témyOffline : 16.10.2009 17:12 | zlozitejsi select na vyber aj priemer

Kód:
FROM tabulka a
to je dobre napisane ? samozrejme namiesto tabulka pisem nazov mojej TBL
ten select mi nefunguje, vypisuje chyby v spojeni s DB


Offline

Skúsený užívateľ
Skúsený užívateľ
zlozitejsi select na vyber aj priemer

Registrovaný: 29.10.07
Prihlásený: 27.10.23
Príspevky: 1395
Témy: 30 | 30
Bydlisko: Bratislava
NapísalOffline : 16.10.2009 17:17 | zlozitejsi select na vyber aj priemer

Ano, je to spravne, chybu budes mat asi niekde inde, mozno preklep alebo tak.
Skus si ten prikaz spustit cez phpMyAdmina, tam ti vypise aj kde mas priblizne chybu


_________________
PC: OS: Windows 11 (64bit) CPU: AMD Ryzen 5 3600 GPU: ASUS TUF RTX3060Ti 8GB RAM: 16GB DDR4-3200MHz Kingston Fury MB: ASUS TUF Gaming B550M WIFI SSD: 1000GB PCIe M.2 NVME
Mobil: Xiaomi POCO F2 PRO
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 11.12.07
Prihlásený: 13.06.24
Príspevky: 488
Témy: 139 | 139
Bydlisko: Bytča
Napísal autor témyOffline : 16.10.2009 17:20 | zlozitejsi select na vyber aj priemer

jasne, preklem, jedno meno som este nezmenil za nick_name.
dakujem za pomoc, funguje to korektne


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 11.12.07
Prihlásený: 13.06.24
Príspevky: 488
Témy: 139 | 139
Bydlisko: Bytča
Napísal autor témyOffline : 16.10.2009 18:09 | zlozitejsi select na vyber aj priemer

este pls, ked to chcem zotriedit podla toho pomeru, kde pojde to ORDER BY pomer ?


Offline

Skúsený užívateľ
Skúsený užívateľ
zlozitejsi select na vyber aj priemer

Registrovaný: 29.10.07
Prihlásený: 27.10.23
Príspevky: 1395
Témy: 30 | 30
Bydlisko: Bratislava
NapísalOffline : 16.10.2009 18:46 | zlozitejsi select na vyber aj priemer

Uplne na koniec


_________________
PC: OS: Windows 11 (64bit) CPU: AMD Ryzen 5 3600 GPU: ASUS TUF RTX3060Ti 8GB RAM: 16GB DDR4-3200MHz Kingston Fury MB: ASUS TUF Gaming B550M WIFI SSD: 1000GB PCIe M.2 NVME
Mobil: Xiaomi POCO F2 PRO
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 11.12.07
Prihlásený: 13.06.24
Príspevky: 488
Témy: 139 | 139
Bydlisko: Bytča
Napísal autor témyOffline : 10.09.2010 11:44 | zlozitejsi select na vyber aj priemer

Chlapi, trosku som to prerabal a potrebujem pomoc ... toto riesenie co je hore je super, ale TERAZ MI DO TABULKY PRIBUDOL NA KONIEC DALSI PARAMETER ... VOLA SA RAST

takze mam velku tabulku, v kazdej je to iste ako predtym a ja potrebujem spravit ten vypis, ten zlozity SELECT, aby to selektovalo a zotriedilo podla priemernej hodnoty toho parametra rast ...

ten parameter je typu float, takze moze tam byt cislo 3, 20, ale aj -15 ...

teda uz vobec netreba pocitat nic s OK, ani KO, len proste vypisat dane mena, teda DISTINCT tam bude urcite a spravit pre kazde meno priemer z hodnoty v tabulke v stlpci RAST a zoradit to podla toho priemeru, zhora nadol

ako na to ?


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2 | 2
NapísalOffline : 10.09.2010 12:02 | zlozitejsi select na vyber aj priemer

cize potrebujes
Kód:
SELECT nick_name as meno, avg(rast) as priemerny_rast FROM table group by nick_name ORDER by avg(rast)
? apropo. pokial pouzivas group by tak distinct netreba


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 11.12.07
Prihlásený: 13.06.24
Príspevky: 488
Témy: 139 | 139
Bydlisko: Bytča
Napísal autor témyOffline : 10.09.2010 12:29 | zlozitejsi select na vyber aj priemer

na localhoste mi to vypisalo zopar ludi a potom: Fatal error: Maximum execution time of 30 seconds exceeded in C:\AppServ\www\platy\statistiky.php on line 391

asi je to narocne na vypocet, ci co ? mam tam ce 6000 riadkov ... ten prikaz predtym, co mi tu pisali, ten prebehol v pohode


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2 | 2
NapísalOffline : 10.09.2010 12:49 | zlozitejsi select na vyber aj priemer

no 6000 riadkov je v podstate prazdna tabulka, tu sa o narocnosti moc hovorit neda. vyskusaj najprv select bez toho "order by avg(rast)"


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 11.12.07
Prihlásený: 13.06.24
Príspevky: 488
Témy: 139 | 139
Bydlisko: Bytča
Napísal autor témyOffline : 10.09.2010 17:20 | zlozitejsi select na vyber aj priemer

problem bude asi na mojom localhoste, uz to prebehlo OK a vyzera ze je to OK, to usporiadanie, dakujem


 [ Príspevkov: 20 ] 


zlozitejsi select na vyber aj priemer



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

výber aktualnej položky z <select>

v PHP, ASP

5

585

14.06.2009 22:04

mylan

V tomto fóre nie sú ďalšie neprečítané témy.

Pohodlný výber zo <select> - vaše nápady, vylepše

v JavaScript, VBScript, Ajax

3

1153

16.09.2007 20:12

imcold

V tomto fóre nie sú ďalšie neprečítané témy.

Automaticke doplnanie <select> po kliknuti , vyber z MySql

v JavaScript, VBScript, Ajax

1

487

22.05.2015 12:44

stenley

V tomto fóre nie sú ďalšie neprečítané témy.

ntldr - problem je zlozitejsi

v Operačné systémy Microsoft

11

387

15.08.2010 21:17

hornak

V tomto fóre nie sú ďalšie neprečítané témy.

Priemer stĺpca z databázy

v PHP, ASP

2

373

19.01.2017 12:14

BX

V tomto fóre nie sú ďalšie neprečítané témy.

ORDER by $priemer DESC

v Databázy

7

755

03.08.2008 15:23

Punker661

V tomto fóre nie sú ďalšie neprečítané témy.

Priemer fanu a prietok vzduchu

v Chladiče a všetky druhy chladenia

15

1270

03.04.2009 20:11

KingTommy

V tomto fóre nie sú ďalšie neprečítané témy.

formular: presun <option> zo <select> do <select>

v JavaScript, VBScript, Ajax

2

795

28.09.2009 15:27

tomast7

V tomto fóre nie sú ďalšie neprečítané témy.

Select

v HTML, XHTML, XML, CSS

3

458

13.09.2012 21:49

1daemon1

V tomto fóre nie sú ďalšie neprečítané témy.

SELECT

v Databázy

6

1444

31.08.2006 13:50

tRizzO

V tomto fóre nie sú ďalšie neprečítané témy.

select

v Databázy

8

552

16.03.2012 14:09

zdeniatqo

V tomto fóre nie sú ďalšie neprečítané témy.

select

v PHP, ASP

7

678

02.05.2008 13:53

mondzo

V tomto fóre nie sú ďalšie neprečítané témy.

Prepojeny select

v Databázy

2

617

18.05.2009 18:05

p360t

V tomto fóre nie sú ďalšie neprečítané témy.

Komplikovany select

v Databázy

2

566

23.03.2012 16:52

general667

V tomto fóre nie sú ďalšie neprečítané témy.

select nefunkcny

v Databázy

5

595

07.06.2010 14:08

MisakNo10

V tomto fóre nie sú ďalšie neprečítané témy.

SELECT OPTION

v HTML, XHTML, XML, CSS

3

586

06.03.2009 14:34

Ďuri



© 2005 - 2025 PCforum, edited by JanoF