我有一个 select 语句,它返回文档存储中具有注释的所有项目的列表(存储在单独的注释表中)。
我要做的是根据下面的声明,为所有已发布评论的文档更新 public_document_store (skin_id) 中另一列的值。
这将返回我要更新的记录:
SELECT public_document_store_talkback.document_id,
public_document_store.section_id
FROM public_document_store
INNER JOIN public_document_store_talkback ON public_document_store_talkback.document_id = public_document_store.document_id
WHERE public_document_store_talkback.is_released = 1
AND public_document_store_talkback.is_rejected = 0
AND public_document_store.section_id = 10;
我试图像这样更新 skin_id 字段:
Update public_document_store SET skin_id = 6
WHERE document_id IN (Select... [as per the statement above] )
但这会返回一个错误:
[Err] 1241 - 操作数应包含 1 列
我在这里根据其他答案尝试了各种其他排列,但没有任何运气(我对 SQL 的了解非常基础,所以如果我在这里遗漏了一些明显的东西,我深表歉意)
任何我如何使这项工作的想法将不胜感激。