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很乐意提供帮助。如果答案有助于解决问题,请记住将其标记为已接受。