具有多个条件的多个更新查询



基本上我面临一个问题,我的两个查询都工作得很好,但不是写两个查询,我想写一个查询。如你所见,我的表名没变只要更新条件

上的数据
await getConnection()
.createQueryBuilder()
.update(StudentOrders)
.set({ OrderTypes: 'Fresh' })
.where({ allowRemote: true }).execute()


await getConnection()
.createQueryBuilder()
.update(StudentOrders)
.set({ OrderTypes: 'Old' })
.where({ allowRemote: false }).execute()

虽然我可以看到你的模糊语言正在做什么,我不确定如何将SQL翻译成它。然而,你应该很容易做到。在Postgres SQL中,您使用case表达式作为替代。所以:(见demo)

update student_orders 
set order_types = case when allow_remote
then 'Fresh'
else 'Old'
end ;

最新更新