我有一個表,其中包含MySQL數據如下。 Size
以MB爲單位顯示文件大小。從MYSQL中刪除數據
--------------------------------------------
| id | name | size | user_id | created_at |
--------------------------------------------
| 1 | a | 120 | 1 | 2017-04-03 |
--------------------------------------------
| 2 | b | 280 | 1 | 2017-04-04 |
--------------------------------------------
| 3 | c | 220 | 1 | 2017-04-05 |
--------------------------------------------
現在,我想刪除最老的數據,如果一個特定的用戶已超過500MB的限制。在上面的情況下,需要刪除ID#1
。
任何人都可以幫我寫一個查詢嗎?
不是500 MB。能請你解釋邏輯 –
從table_name的 刪去created_at中(選擇分鐘(從表名created_at)) –
比方說,一個用戶已經訂閱了軟件包A給予用戶1024MB空間。現在,由於x用戶帳戶被降級爲免費軟件包,使用戶可以獲得500MB的空間。所以我需要刪除較舊的和空間不足的文件。 #2和#3是最新的,它們的大小總和爲500MB。因此,我們將保留這些文件 –