Sql 使用select查询更新记录,子查询返回错误
错误:如果子查询没有引入EXISTS,则只能在选择列表中指定一个表达式 我理解这个错误,但我不知道如何重写查询以避免它。我正在查找f1、f2和f3中具有重复值的记录,这些记录基于它们从中导入的文件的时间戳。不在子查询中的记录应按指示进行修改。我的结果中不需要import\u file\u时间戳,但我相信我必须包含它以选择记录的正确版本。子查询本身返回正确的信息。我该怎么做Sql 使用select查询更新记录,子查询返回错误,sql,Sql,错误:如果子查询没有引入EXISTS,则只能在选择列表中指定一个表达式 我理解这个错误,但我不知道如何重写查询以避免它。我正在查找f1、f2和f3中具有重复值的记录,这些记录基于它们从中导入的文件的时间戳。不在子查询中的记录应按指示进行修改。我的结果中不需要import\u file\u时间戳,但我相信我必须包含它以选择记录的正确版本。子查询本身返回正确的信息。我该怎么做 update import_raw_records set raw_record_status =
update import_raw_records
set raw_record_status = 'I'
from import_raw_records
where f1+f2+f3 NOT IN (
select a.f1+a.f2+a.f3,
max(b.import_file_timestamp)
from import_raw_records a
inner join import_files b
on a.import_file_id = b.import_file_id
group by a.f1+a.f2+a.f3)
谢谢,
John您正在使用的数据库是什么?我从未见过SQL风格的
+
表示和。那部分似乎是错的。