在同一查询 mysql 中更新+order by
她是我的表结构:
Table1:track_data
| device_id(foreign) | latitude | longitude | activity |
-存储 id、位置坐标、活动(它们被插入的时刻)。
表2:user_devices
| device_id(primary) | park_lat | park_long |
存储id,park_lat/park_long 需要根据请求存储track_data 表中的纬度/经度(即最新的活动数据)。 现在,我将如何在单个查询中存储从 Table1 到 Table2 的最新纬度/经度。这是否可能,在同一查询中混合选择和更新?
现在我的直觉查询不起作用:)
UPDATE user_devices,track_data
SET user_devices.park_lat = latitude,user_devices.park_long = longitude
WHERE user_devices.id='33' AND track_data.activity=(SELECT activity FROM track_data
ORDER BY track_data.activity DESC LIMIT 1)
Her are my table structures:
Table1:track_data
| device_id(foreign) | latitude | longitude | activity |
-Stores id, location co-ordinates, activity being the time instant they were inserted.
Table2:user_devices
| device_id(primary) | park_lat | park_long |
Stores id, park_lat/park_long need to be stored with latitude/longitude from track_data table on request(i.e., the latest activity data).
Now, how will i store the latest latitude/longitude from Table1 to Table2, in a single query. Is this possible, To mix select and update in same query?
And now my non-functioning intuitive query:)
UPDATE user_devices,track_data
SET user_devices.park_lat = latitude,user_devices.park_long = longitude
WHERE user_devices.id='33' AND track_data.activity=(SELECT activity FROM track_data
ORDER BY track_data.activity DESC LIMIT 1)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是如何工作的:
这个查询将执行得非常好,因为它不像有些人本能地那样每行执行一次查询。
How this works:
This query will perform very well, because it isn't doing a query per row like some people would instinctively do.