1
這裏是我的表結構:如何使用自連接或其他方法選擇最新的數據?
CREATE TABLE USER (
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50),
`status` VARCHAR(50),
`dateupdated` DATETIME
) ENGINE = INNODB;
如果數據,有一個ID
作爲主鍵,然後將用戶名可以重來,讓我們說我有3個用戶,並且所有的昨天和今天有一個狀態更新。現在的問題是,如何選擇只從每個用戶的最新狀態更新?,這裏是我的解決方案
SELECT user.`username`, latest.status AS latest_status , user.`dateupdated`
FROM USER
LEFT JOIN USER AS latest ON user.`id` = latest.id
ORDER BY dateupdated DESC;
...但它似乎錯了,因爲它「也」打印出來,昨天日的數據,因此如何要做到這一點,才能獲得每個用戶的確切最新數據,並避免打印出過去的數據?