我正在尝试通过将某些条件与另一个表连接起来来更新我的 postgres 表中的一个字段。我提到了这个链接,它给了我一个与我的场景相关的查询模型:UPDATE product as p SET price = 200 FROM product_segment as ps WHERE p.segment_id = ps.id and p.name = 'diam'现在我必须将此查询转换为 orm.Query。我尝试使用 Join() 但它似乎不起作用。我试过的代码:_, err := c.postgresDB.WithContext(ctx).Model(Product). Set("price =?", 200). Join("LEFT JOIN product_segment as ps"). JoinOn("ps.id = product.segment_id"). Where("name =?", "diam"). Update()如何正确编写代码以获得预期结果???
1 回答
元芳怎么了
TA贡献1798条经验 获得超7个赞
经过多次尝试,我最终做了下面的代码,它给了我想要的结果。
_, err := c.postgresDB.WithContext(ctx).Model(Product).
Set("price =? from product_segment as ps", 200).
Where("name =?", "diam").
Update()
大家有更好的方法欢迎分享。
- 1 回答
- 0 关注
- 78 浏览
添加回答
举报
0/150
提交
取消