postgresql – 在postgres中使用限制和偏移量更新表
发布时间:2020-12-13 16:31:07 所属栏目:百科 来源:网络整理
导读:您是否可以使用限制和偏移量的其他表格更新表格? 例如,表t_device有600行 和t_object有100行 我想更新一个列,但只更新前100行与子查询的偏移量 update t_device set id_object = (select id_object from t_object limit 100) limit 100 offset 0;update t_d
您是否可以使用限制和偏移量的其他表格更新表格?
例如,表t_device有600行 我想更新一个列,但只更新前100行与子查询的偏移量 update t_device set id_object = (select id_object from t_object limit 100) limit 100 offset 0; update t_device set id_object = (select id_object from t_object limit 100) limit 100 offset 100; 可能吗?我无法找到一个解决方案来修改t_object中t_device中的值 我正在使用postgres 8.4
>如果你只是将id_object设置为id_object,那UPDATE语句似乎不会有多大用处,尽管是??以半随机顺序.
>如果t_device表UPDATE语句中没有唯一的WHERE谓词,则无法保证只更新100行,这就是我假设外部LIMIT的意图. >您应该在子查询中有一个ORDER BY,以确保您没有在行中重叠. 以下内容可能对您有用. UPDATE t_device set id_object = t.id_object FROM (select id_object from t_object order by id_object limit 100) t WHERE t.id_object = t_device.id_object; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |