我无法将记录复制并插入到同一个表中但具有不同的值且基于两个条件。
我到目前为止:
INSERT INTO Userdetails
(ID, Username, Firstname, Surname, Location, TimeAs)
SELECT ID, Username, Firstname, Surname, Location, CURRENT_TIMESTAMP
FROM
Userdetails where Username = 'Harvard'; // and the latest date of the record
我想要做的是当一个位置被更新时,一个新记录带有一个新的时间戳和位置,旧记录的所有细节(名字等...)被插入到表中,但保留旧记录
如果我只使用WHERE Username = I每次执行查询时将记录数乘以2x。
示例日期:
Username | Firstname | Surname | Location | Last Updated
Harvard David Beckham London 2017-05-08 12:11:00
Harvard David Beckham Turkey 2017-05-08 12:14:00
Stanton John Smith Paris 2017-05-08 11:24:00
// This would be the result of the query, With a different timeStamp and Location but keeping the old record
Harvard David Beckham Hong Kong 2017-05-08 12:20:00
我希望它做的是复制最新记录,其中用户名='哈佛'但也看看使用最新的时间,而不仅仅是用户名,因为这将创建2个记录而不仅仅是我想要的1个。
感谢任何帮助。