MySQL如何用MIN更新
我正在尝试使用另一个表中的最小日期值更新一个表 我试过:MySQL如何用MIN更新,mysql,Mysql,我正在尝试使用另一个表中的最小日期值更新一个表 我试过: UPDATE `profiles` AS t1 INNER JOIN (SELECT MIN(attendance_data.Logdate) min_date FROM attendance_data) t2 ON t1.user_id=T2.user_id SET t1.first_scan_date=t2.min_date 并在“on子句”中获取未知列“t2.user\u id” 而且 UPDATE `profiles` t
UPDATE `profiles` AS t1
INNER JOIN (SELECT MIN(attendance_data.Logdate) min_date
FROM attendance_data) t2 ON t1.user_id=T2.user_id
SET t1.first_scan_date=t2.min_date
并在“on子句”中获取未知列“t2.user\u id”
而且
UPDATE `profiles` t1
SET first_scan_date = (SELECT MIN(t2.Logdate)
FROM attendance_data t2
WHERE t1.user_id = t2.user_id
有什么建议吗?试试这个:
UPDATE `profiles` AS t1
INNER JOIN (SELECT user_id, MIN(attendance_data.Logdate) min_date
FROM attendance_data
group by user_id) t2 ON t1.user_id=T2.user_id
SET t1.first_scan_date=t2.min_date
注意,对于特定的用户id
,inner join的右侧表达式将返回logdate
的最小值,而不是总的最小值
如果您只想将配置文件中的所有值设置为最短日期,请尝试以下操作:
UPDATE `profiles` AS t1
SET t1.first_scan_date= (SELECT MIN(attendance_data.Logdate) min_date FROM attendance_data)
您是否正在尝试获取内部查询中每个用户的最小Logdate
?@user3505581很乐意提供帮助。如果答案有助于解决问题,请记住将其标记为已接受。