Pogledajte određenu poruku
Staro 22. 04. 2008.   #1
pele
član
Na probnom radu
 
Datum učlanjenja: 06.06.2007
Poruke: 42
Hvala: 2
0 "Hvala" u 0 poruka
pele is on a distinguished road
Default kako odraditi ovakav select

MySQL 5
php 5


tabela_1:
idradnika …
ime
prezime



tabela_2:
idizostanka …
idradnika
date_iz (dan je fiksiran na 01. gleda se samo mesec i godina)
dana_izostao (u odredjenoj godini , odredjenog dana)



-na upit OD, DO iz forme, dobijam: $od i $do.

-potrebno je za zadati vremenski interval izracunati ukupan broj izostanaka radnika po mesecima i predstaviti ih u tabeli u kojoj su kolone meseci od Jan. do Dec., a redovi imena i prezimena radnika, kojima odgovara odredjeni broj izostanaka za odredjeni mesec.
-osnovni upit mi je:


SELECT
tabela_1.ime,
tabela_1.prezime,
tabela_2.date_iz,
SUM( dana_izostao ) //(zato sto interval moze biti 2 god. tj.npr. 2 Januara)

FROM tabela_2
JOIN tabela_1 ON (tabela_1.idradnika = tabela_2.idradnika )
WHERE tabela_2.date_iz BETWEEN '$od' AND '$do'
GROUP BY tabela_1.idradnika
ORDER BY tabela_1.ime

-kad se trazi prikaz za jedan mesec to nije problem.
-kako da za svaki mesec, ako je recimo period od januara do maja izvucem SUM(dana_iz), za svakog radnika koji je imao izostanke u bar 1 mesecu od zadatih i prikazem u jednoj tabeli.
-pokusao sam da za svaku kolonu po mesecima pravim poseban SELECT uz uslov da iz osnovnog SELECTA izvucem prvo sve tabela_2.date_iz, pa onda:


………
<?php
$a=$row['2'];
?>
<?php
$tmp=explode("-", $a);
$ttt=$tmp[2];//dan
$tt=$tmp[1];//mesec
$t=$tmp[0];//godina
?>
…….
-pa za uslov koji daje $tt, za naznaku meseca biram sta ide u Jan.(ako je $tt=’01’, Feb.(ako je $tt=’02’, itd. i tako za svaki SELECT kome odgovara kombinacija tabela_2.date_iz=’$a’.

Nikako mi ne ide.
Kako da resim?
pele je offline   Odgovorite uz citat