Mysql更新表,其中包含内部联接的另一个表的最大值

时间:2013-09-22 16:41:10

标签: mysql

update cle c set c.dme_id = (
    select max(serial_number) from cle_dme_id a where cast(
        a.dme_id as decimal(7,4)
    )<=cast(
        c.dme_id as decimal(7,4)
    )
);

它不起作用,这就是错误:

Error Code: 1264. Out of range value for column '(null)' at row 1

1 个答案:

答案 0 :(得分:0)

我发现小数(7,4)导致了问题。用十进制(10,4)替换后,它工作正常。