你好,我想我在這裏嘗試一些複雜的東西。也許你可以在這裏幫助我。mysql用userid選擇兩個表並比較時間戳並計算它
我有兩個表:收入和支出。
收益具有作爲日期時間和其他東西的用戶ID,金額,時間戳。當用戶獲得某些東西時,它只有信息。 例子:
id | user_id | amount | timestamp |
1 | 2 | 1050 | 31days ago |
2 | 1 | 20 | 10days ago |
3 | 1 | 10 | 9 days ago |
4 | 2 | 10000 | 9 days ago |
...
賠率,如果用戶是X的收益上面有用戶ID,數量,時間戳日期時間,擁有大約支出條目可以說,1000例
id | user_id | payout_amount | timestamp |
1 | 2 | 1050 | 30days ago |
...
我的問題了。我想計算有多少支出沒有完成(誰沒有支付)。意即。我需要比較payouts.timestamp和具有相同用戶標識的earnings.timestamp,並檢查是否有新條目,然後是支出。如果是的話,那麼算一下它有多少(所以我認爲在這裏它需要首先總結收益)。我甚至不確定這是否可能。
我也可以用PHP做到這一點,如果這不是可以單獨與MySQL。
例如,結果應該是:count = 2,因爲userid 1只有30個收入,所以他沒有達到1000,他也沒有在支出表中輸入。 Userid 2有10000個,但他仍然沒有支付,因爲我們沒有執行它或在支出表中輸入條目。他只是有一箇舊的支出,新的收入沒有支付。
編輯:10天前,事情就是例子。我使用有真正的時間類型 EDIT2:忘了說我這個嘗試之一:
select COUNT(e.amount) FROM earnings e, payouts p where p.payout_timestamp < e.timestamp AND p.user_id = e.user_id GROUP BY p.user_id, e.user_id
,去這樣的:
| Count(e.amount) |
| 2 |
| 1 |