Jeg har en databasetabell som dette:
wagetable
name lowhours highhours wage
Default 0 40 10
Default 40 9999 15
Brian 0 40 15
Brian 40 50 20
Brian 50 9999 22
Chad 0 40 13
Chad 40 9999 17
Hvis 'Brian' jobbet 43.5151587 timer, jeg vil at det skal finne ut at han gjorde (40 * 15) + (3,5151587 * 20) = 670,303174.
Dette er en SQLite database, så jeg vet at jeg vil bruke:
SELECT wage FROM wagetable WHERE name LIKE 'Brian' AND 'HourNum' BETWEEN lowhours AND highhours;
Med en kombinasjon av gulv og% ... Jeg er bare ikke å sette logikken sammen i hodet mitt.
Vær oppmerksom på svar i C # og PHP akseptert, så jeg kan konvertere logikken til det jeg trenger. Jeg leter etter pseudo-kode, men vil akseptere trukket ut svar
Edit: Vær oppmerksom på ... De arbeidstimer vil aldri bli en eksakt heltall, hvorfor jeg la overlapp skje.
Edit2:
Jeg ønsker å ta en ansatte Utførte timeverk (eksempel: 43,5151587) og deretter innse at de første 40 timer, ble han gjør standard betale @ $ 15 en time. så (40 * 15) ... Deretter jobbet han 3.5151587 timer overtid @ $ 20 i timen. så (40 * 15) legge til det (3,5151587 * 20) ... Det totale beløpet tjent var 670,303174













