次のようなデータベーステーブルがあります。
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
「ブライアン」が 43.5151587 時間働いた場合、彼が (40*15)+(3.5151587*20) = 670.303174 を作ったことを理解してもらいたいのです。
これは SQLite データベースなので、以下を使用することがわかっています。
SELECT wage FROM wagetable WHERE name LIKE 'Brian' AND 'HourNum' BETWEEN lowhours AND highhours;
床と%の組み合わせで...私は頭の中で論理をまとめていません。
ロジックを必要なものに変換できるため、C#とPHPでの回答が受け入れられていることに注意してください。疑似コードを探していますが、引き出された回答を受け入れます
編集:注意してください...勤務時間は正確な整数になることはありません。重複を発生させた理由です。
編集2:
従業員の総労働時間 (例: 43.5151587) を取得したいのですが、最初の 40 時間は、彼が時給 15 ドルで標準賃金を支払っていたことに気付きます。つまり (40*15)...その後、彼は 3.5151587 時間の残業を 1 時間あたり 20 ドルで行いました。したがって、(40*15) に (3.5151587*20) を加算すると、獲得した合計金額は 670.303174 でした