在 SQL Server 2008 中,我有一组包含东部和西部成本的数据。我正在为加拿大的客户添加一个新字段,该字段需要是东部或西部成本(以较大者为准)的 1.5 倍。所以我试图想出一些我可以执行的sql。我尝试了以下方法但没有成功:
UPDATE ShippingCost
SET
IF EastCost>WestCost
Canada= EastCost*1.8
ELSE
Canada= WestCost*1.8
ENDIF
我确信有一种简单的方法可以做到这一点?有什么想法吗?
最佳答案
您需要使用案例
UPDATE ShippingCost
SET
Canada = CASE WHEN EastCost>WestCost THEN EastCost*1.8
ELSE WestCost*1.8 END
关于基于 SELECT 的 SQL 条件 UPDATE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9006666/