兩個值我使用下面的代碼以提取最新的平衡值(按日期和時間),每星期我的數據庫:MySQL的 - JOIN功能 - 返回時相同的過濾條件都滿足
SELECT t.id, t.date, t.time, t.balance FROM db1 t
JOIN (SELECT tt.cw, MAX(timestamp(tt.date,tt.time)) as 'maxtime'
FROM db1 tt GROUP BY tt.cw) m ON m.maxtime = timestamp(t.date,t.time) AND t.cw = m.cw;
代碼工作正常,但我遇到以下問題:
每當最新值具有完全相同的時間戳(當兩個條目完全相同的秒)時,結果顯示兩個行都具有相應的值。現在我不知何故只希望查詢每週顯示一個值。
我嘗試了一些DISTINCT版本,這一切都不起作用。
非常感謝您的幫助! 乾杯
:UPDATE: 這裏DB1的結構的一個例子:
+----+------------+-------+----+---------+
| id | date | time | cw | balance |
+----+------------+-------+----+---------+
| 1 | 2015-01-01 | 13:01 | 1 | 100 |
| 2 | 2015-01-01 | 17:01 | 1 | 110 |
| 3 | 2015-01-02 | 14:01 | 1 | 120 |
| 4 | 2015-01-15 | 13:01 | 3 | 140 |
| 5 | 2015-01-15 | 13:01 | 3 | 140 |
+----+------------+-------+----+---------+
結果看起來像這樣:
+----+------------+-------+----+---------+
| id | date | time | cw | balance |
+----+------------+-------+----+---------+
| 3 | 2015-01-02 | 14:01 | 1 | 120 |
| 4 | 2015-01-15 | 13:01 | 3 | 140 |
| 5 | 2015-01-15 | 13:01 | 3 | 140 |
+----+------------+-------+----+---------+
但應該只交付:
+----+------------+-------+----+---------+
| id | date | time | cw | balance |
+----+------------+-------+----+---------+
| 3 | 2015-01-02 | 14:01 | 1 | 120 |
| 5 | 2015-01-15 | 13:01 | 3 | 140 |
+----+------------+-------+----+---------+
'show create table db1' output please。樣本數據,所需結果。所以3件事 – Drew
我把樣品數據放在上面的問題中,謝謝 – Benvaulter
要麼你沒有顯示整個表或者你的設計有問題。 「id」字段代表什麼?如果它只是一個遞增值,那麼你的模型就會被破壞;你如何將餘額與賬戶聯繫起來?似乎你需要別的東西來使餘額行變得獨一無二。 – Tony