我对sql很新,现在我正在研究sql中的一个大项目,我遇到了这个我在论坛上找不到的问题。
我有一个具有不同值的表,我选择了一列(“设置”)作为主键。现在我想显示设置列中哪个值是唯一的,哪个不是。 所以我创建了“is_unique_in_this”列,它可以是true或false。
这就是我试图解决问题的方法:
UPDATE newtable SET is_unique_in_this = 'true'
WHERE (
SELECT setting FROM newtable
GROUP BY setting
HAVING COUNT(setting) = 1
);
我还没有学到很多关于子选择的知识,但是选择本身是有效的,并且给出了我需要看到的值。我得到的错误有时是不同的。现在它说:
#1093 - You can't specify target table 'newtable' for update in FROM clause
我确实在寻找解决方案,但我找不到我需要的东西。非常感谢你的帮助。
问候
的Nik