删除或者更新一张表中的数据的时候,会出现1093出错。

原因:不能先查出需要更新或者删除表中的某个字段来作为条件。

DELETE
FROM
	T_RECTIFICATIONDECLARATION
WHERE
	FID IN (
		SELECT
			FID
		FROM
			T_RECTIFICATIONDECLARATION
		GROUP BY
			FID
		HAVING
			COUNT(FID) > 1
	)

 解决办法:外面多嵌套一层查询,原先的查询作为子查询。

DELETE
FROM
	T_RECTIFICATIONDECLARATION
WHERE
	FID IN (
		SELECT
			a.FID
		FROM
			(
				SELECT
					FID
				FROM
					T_RECTIFICATIONDECLARATION
				GROUP BY
					FID
				HAVING
					COUNT(FID) > 1
			) a
	)

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐