Bosna i Hercegovina



#1 28.08.2016-11:50
Avko Offline
Administrator
Registrovan/a od: 28.05.2014-09:21
Komentari: 3,316


Subject: izracun sati za pon-pet sub i ned
SELECT CASE WEEKDAY( datum )
WHEN 0 THEN "radni dan"
WHEN 1 THEN "radni dan"
WHEN 2 THEN "radni dan"
WHEN 3 THEN "radni dan"
WHEN 4 THEN "radni dan"
WHEN 5 THEN 'subota'
WHEN 6 THEN 'nedjelja'
END dan, SUM( sati ) AS ukupnoSati
FROM zaposlenici
WHERE IDzaposlenik = 123
GROUP BY dan
LIMIT 0 , 30

trebam COUNT(radnidan),COUNT(subota),COUNT(nedjelja)
hvala
Život je moja domovina.
↑  ↓

#2 28.08.2016-20:07
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,818


Subject: Re: izracun sati za pon-pet sub i ned
Zakaci tabelu da ne pravim hehehe.
Pozdrav
↑  ↓

#3 29.08.2016-15:01
Avko Offline
Administrator
Registrovan/a od: 28.05.2014-09:21
Komentari: 3,316


Subject: Re: izracun sati za pon-pet sub i ned
oprosti, zaboravio sam najvazniji detalj a to je zakaciti sql fajl
evo ide

Prilozi:
Informacije o fajlu: rar  zaposlenik.rar
Preuzimanja: 83
Veličina: 702 Byte


Život je moja domovina.
Ovaj komentar je mijenjan 1 puta. zadnja izmjena 29.08.2016-15:02 od strane Avko. ↑  ↓

#4 29.08.2016-23:18
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,818


Subject: Re: izracun sati za pon-pet sub i ned
DownloadIzvorni kod (Text):
  1. SELECT COUNT(Datum) as UkupnoDana,
  2. (SELECT COUNT(DATE_FORMAT(datum,'%a'))as d FROM `zaposlenik` WHERE DATE_FORMAT(datum,'%a') ="Sat")as Subota,
  3. (SELECT COUNT(DATE_FORMAT(datum,'%a'))as d FROM `zaposlenik` WHERE DATE_FORMAT(datum,'%a') ="Sun")as Nedelja,
  4. (SELECT COUNT(DATE_FORMAT(datum,'%a'))as d FROM `zaposlenik` WHERE DATE_FORMAT(datum,'%a') IN ('Mon','Tue','Wed','Thu','Fri'))as RadniDan
  5. FROM `zaposlenik`

Pozdrav
↑  ↓

#5 30.08.2016-00:02
Gjoreski Offline
Super Moderator
Registrovan/a od: 02.02.2009-22:24
Komentari: 1,545


Subject: Re: izracun sati za pon-pet sub i ned
Eve pogledaj ovo.
Ovo je bilo malo zeznato.

DownloadIzvorni kod (Visual Basic):
  1. SELECT
  2. CASE WEEKDAY( datum )
  3. WHEN 0 THEN "radni dan"
  4. WHEN 1 THEN "radni dan"
  5. WHEN 2 THEN "radni dan"
  6. WHEN 3 THEN "radni dan"
  7. WHEN 4 THEN "radni dan"
  8. WHEN 5 THEN 'subota'
  9. WHEN 6 THEN 'nedjelja'
  10. END dan,
  11. sum(TIMESTAMPDIFF(hour,CONVERT(CONCAT((datum) , ' ', odsati),DATETIME) , CONVERT(CONCAT((datum+ INTERVAL 1 DAY) , ' ', dosati),DATETIME)) )as ukupnoSati,
  12. COUNT(*) as ContTip
  13. FROM zaposlenik
  14. WHERE ID = '29021966-33-0132'
  15. GROUP BY dan
↑  ↓

#6 30.08.2016-02:36
Gjoreski Offline
Super Moderator
Registrovan/a od: 02.02.2009-22:24
Komentari: 1,545


Ocjena: Ocjena:100 Subject: Re: izracun sati za pon-pet sub i ned
Uf nisam video da ZXZ je vec odgovorio ali moram ti ukazati neke stvare.
Vidim da se rade nosto oko preracun vremena a datume su najspecificni za obrada.
Moras voditi jako puno paznja oko izrada tabela za u buducnos da nemas puno problema.
Jas pred par godina sam radio jedna aplikacija za preracun radnog vremena za jedna firma i bogami sam se namucio na pocetki zbog to sto nisam napravio dobra tablela.
Jedna od najbitnih stvari je to da pored casot u pole gdje zapisujes pocetok ili kraj radnog vremena stoi i data.To je sve zbog laksi preracun.Lako je iz kompletno Vreme (dataum i cas) izdvoiti samo data ili samo cas ili bilo sta ali kad spajas data i vreme e to bas i ne ide lako (pogledaj koliko konverzije i spajajna morao sam da uradi za da mogu da oduzmem dve vremena) .
Iz ovi primera sta si dao u tabela vidi se da radno vreme pocijne u 18.00 danas a zavrsi sutra u 7 ujutro ,a imamo samo danasni datum i sad kako bi doslo ova tvoja matematika " 7-18" ?
Ja sam u gorni primer danasni datum povecao za jedam dan da mogu izracunati vrenena ali tu je problem kad u jednu sedmici jedan radnik jedan dan dolazi od 7 do 14 a jedan od 18 do 7 kako ces uzeti krajno vreme? U prvi slucaj imas pocetak i kraj radnog vremena u jedan dan , a u drugi slucaj imas poceak u jedan dan a kraj u drugi.

Ako si vec poceo neka aplikacija od ovog tipa razmisli oko ove sugestije ili daj opisi proces koj ti treba pa mozemo tu da napravimo tabele.
Ako je samo vezba od oba primera sta smo stavili sa ZXZ ima sta da naucis.

Ovo sta trazis mozes pogledati pod nazivom Crosstab query ili kod MSSql to se zove PIVOT queri.
↑  ↓

#7 30.08.2016-07:37
Avko Offline
Administrator
Registrovan/a od: 28.05.2014-09:21
Komentari: 3,316


Subject: Re: izracun sati za pon-pet sub i ned
hvala momci

datumi nisu bili dobri pa sam to preslozio rucno
evo ponovo attachment

DownloadIzvorni kod (Text):
  1. SELECT COUNT(Datum) as UkupnoDana,
  2.  
  3. (SELECT COUNT(DATE_FORMAT(datum,'%a'))as d FROM `zaposlenik` WHERE DATE_FORMAT(datum,'%a') ="Sat")as Subota,
  4.  
  5. (SELECT COUNT(DATE_FORMAT(datum,'%a'))as d FROM `zaposlenik` WHERE DATE_FORMAT(datum,'%a') ="Sun")as Nedelja,
  6.  
  7. (SELECT COUNT(DATE_FORMAT(datum,'%a'))as d FROM `zaposlenik` WHERE DATE_FORMAT(datum,'%a') IN ('Mon','Tue','Wed','Thu','Fri'))as RadniDan
  8.  
  9. FROM `zaposlenik`

a gdje cu staviti AND MONTH(datum)=7 /za sedmi mjesec

Prilozi:
Informacije o fajlu: zip  zaposlenik.sql.zip
Preuzimanja: 75
Veličina: 791 Byte


Život je moja domovina.
Ovaj komentar je mijenjan 3 puta. zadnja izmjena 30.08.2016-07:40 od strane Avko. ↑  ↓

#8 30.08.2016-07:47
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,818


Subject: Re: izracun sati za pon-pet sub i ned
Jel mislis na uslov za sedmi mjesec?
Pozdrav
↑  ↓

#9 30.08.2016-09:24
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,818


Subject: Re: izracun sati za pon-pet sub i ned
Mozda je i ovaj nacin interesantan.
DownloadIzvorni kod (Text):
  1. SELECT If(DATE_FORMAT(Datum,'%w') Between 2 And 6,'RadniDan',DATE_FORMAT(Datum,'%a')) AS Dan, Count(DATE_FORMAT(Datum,'%a')) AS Ukupno
  2. FROM zaposlenik
  3. GROUP BY If(DATE_FORMAT(Datum,'%w') Between 2 And 6,'RadniDan',DATE_FORMAT(Datum,'%a'))

Pozdrav
↑  ↓

#10 30.08.2016-11:18
Gjoreski Offline
Super Moderator
Registrovan/a od: 02.02.2009-22:24
Komentari: 1,545


Subject: Re: izracun sati za pon-pet sub i ned
Ja ne mogu razumeti sta oce Avko da uradi ?
↑  ↓

#11 30.08.2016-11:38
Avko Offline
Administrator
Registrovan/a od: 28.05.2014-09:21
Komentari: 3,316


Subject: Re: izracun sati za pon-pet sub i ned
ok malo cu izucavati pa se javim.
aleksa, izracunacu satnicu za 7 mjesec. radni dan je 30kn sat, nocni je 50%, subota je 20%, nedjelja je 50%
do sada sam to radio u excelu ali vidim da vi svi radite sa bazom pa idem i ja
uz ovakve lagane zadatke mogu nesto nauciti tako sam se upoznao sa excelo i vb sve kroz primjere
Život je moja domovina.
↑  ↓

#12 30.08.2016-13:13
Gjoreski Offline
Super Moderator
Registrovan/a od: 02.02.2009-22:24
Komentari: 1,545


Subject: Re: izracun sati za pon-pet sub i ned
Razumeo sam ali ova sta si postavio nije dobro moras malo poraditi oko tvoja tabela.
Recimi od kad do kad se racuna nocni sat i dali nocni sati preko vikenda se racunaju kako :
Subota = (8h * 70kn) * 20%
↑  ↓

#13 30.08.2016-13:28
Avko Offline
Administrator
Registrovan/a od: 28.05.2014-09:21
Komentari: 3,316


Subject: Re: izracun sati za pon-pet sub i ned
ukupno svi sati * 30kn (radni dani + subote + nedjelje)
svi nocni sati (radni dan + subota + nedjelja) nocni sati * 15 kn (vec smo racunali ih pod ukupno sti pa samo dodajemo 50%
subota * 6kn
nedjelja * 15 kn
Aleksa, netreba racunati koliko je nocnog sata u satima to je vec excel izracunao
Život je moja domovina.
↑  ↓

#14 30.08.2016-16:56
Gjoreski Offline
Super Moderator
Registrovan/a od: 02.02.2009-22:24
Komentari: 1,545


Subject: Re: izracun sati za pon-pet sub i ned
U redu je ako vec koristis izracunati sati , ja sam mislio da pravis kompletan program iz pocetka i zato sam insistirao da preradis tabela.
↑  ↓

#15 30.08.2016-17:12
Avko Offline
Administrator
Registrovan/a od: 28.05.2014-09:21
Komentari: 3,316


Subject: Re: izracun sati za pon-pet sub i ned
zxz
1.primjer:
DownloadIzvorni kod (Text):
  1. SELECT COUNT(Datum) as UkupnoDana,
  2. (SELECT COUNT(DATE_FORMAT(datum,'%a'))as d FROM `zaposlenik` WHERE DATE_FORMAT(datum,'%a') ="Sat")as Subota,
  3. (SELECT COUNT(DATE_FORMAT(datum,'%a'))as d FROM `zaposlenik` WHERE DATE_FORMAT(datum,'%a') ="Sun")as Nedelja,
  4. (SELECT COUNT(DATE_FORMAT(datum,'%a'))as d FROM `zaposlenik` WHERE DATE_FORMAT(datum,'%a') IN ('Mon','Tue','Wed','Thu','Fri'))as RadniDan
  5. FROM `zaposlenik`

rezultat:
UkupnoDanaSubotaNedeljaRadniDan
528836


2.primjer
DownloadIzvorni kod (Text):
  1. SELECT If(DATE_FORMAT(Datum,'%w') Between 2 And 6,'RadniDan',DATE_FORMAT(Datum,'%a')) AS Dan, Count(DATE_FORMAT(Datum,'%a')) AS Ukupno
  2. FROM zaposlenik
  3. GROUP BY If(DATE_FORMAT(Datum,'%w') Between 2 And 6,'RadniDan',DATE_FORMAT(Datum,'%a'))

rezultat:
DanUkupno
Mon7
RadniDan37
Sun8
Gjoreski
1.primjer
DownloadIzvorni kod (Text):
  1. SELECT
  2. CASE WEEKDAY( datum )
  3. WHEN 0 THEN "radni dan"
  4. WHEN 1 THEN "radni dan"
  5. WHEN 2 THEN "radni dan"
  6. WHEN 3 THEN "radni dan"
  7. WHEN 4 THEN "radni dan"
  8. WHEN 5 THEN 'subota'
  9. WHEN 6 THEN 'nedjelja'
  10. END dan, COUNT(*) as ContTip
  11. FROM zaposlenik
  12. GROUP BY dan

rezultat:

danContTip
nedjelja8
radniDan36
subota8

Život je moja domovina.
Ovaj komentar je mijenjan 9 puta. zadnja izmjena 30.08.2016-17:23 od strane Avko. ↑  ↓

Stranice (2): 1, 2


All times are GMT +01:00. Current time: 14.12.2018-07:23.