Ik heb een database tabel als volgt uit:
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
Als 'Brian' werkte 43.5151587 uur, wil ik het om erachter te komen dat hij maakte (40 * 15) + (3,5151587 * 20) = 670,303174.
Dit is een SQLite database, dus ik weet dat ik zal gebruiken:
SELECT wage FROM wagetable WHERE name LIKE 'Brian' AND 'HourNum' BETWEEN lowhours AND highhours;
Met een combinatie van verdieping en% ... Ik ben gewoon niet het samenstellen van de logica in mijn hoofd.
Let op antwoorden in C # en PHP geaccepteerd, omdat ik de logica kan omzetten naar wat ik nodig heb. Ik ben op zoek naar pseudo-code, maar wordt getrokken uit de antwoorden accepteren
Edit: let op ... De gewerkte uren zal nooit een exacte integer te zijn, waarom ik laat overlappen gebeuren.
Edit2:
Ik wil een medewerkers totaal aantal gewerkte uren (voorbeeld: 43,5151587) en dan beseffen dat de eerste 40 uur, hij was het maken van standaard pay @ $ 15 per uur. dus (40 * 15) ... Dan werkte hij 3,5151587 overuren @ $ 20 per uur. dus (40 * 15) toe te voegen (3,5151587 * 20) ... Het totale bedrag verdiend was 670,303174













