运行mysql查询时出现1093错误

时间:2014-10-22 14:24:53

标签: mysql

我正在尝试运行此查询

UPDATE xxxxx_k2_categories SET params = (SELECT params FROM xxxxx_k2_categories WHERE alias = 'bread') WHERE parent = 1 MySQL

但是我得到了1093错误。我知道这是因为我试图从它自己的值更新表格,但我不太了解Mysql。虽然这真的帮助我学习:)。

非常感谢任何帮助。

这是我的数据。

Alias Parent Params Bakery 0 {Test Params 1} Bread 1 {Test Params 2} Rools 1 {Test Params 3}

我想复制项目'面包'的params中的值。对于值为' 1'

的所有行

2 个答案:

答案 0 :(得分:1)

改为使用join

UPDATE xxxxx_k2_categories x cross join
       (SELECT params FROM xxxxx_k2_categories WHERE alias = 'bread') b
    SET x.params = b.params
    WHERE parent = 1;

答案 1 :(得分:0)

是否 SELECT params FROM xxxxx_k2_categories WHERE alias =' bread'

返回超过1条记录? 如果是这样可能是问题