使用下面的语句,我希望如果[Invoice_Type_Code] = 'c'为负,则数量为负,如果不是,则为正。
SELECT [Invoice_Amount]
FROM [Forefront].[dbo].[VN_GL_DISTRIBUTION_HEADER_MC]
WHERE [Vendor_Code] =' UnitedEL' and
[Date_List1] > '2011-12-31' and
[Date_List1] < '2012-02-01' and
[Company_Code] = 'tmg' 发布于 2013-01-31 00:26:19
根据您的关系型数据库,使用CASE也可以--大多数关系型数据库都应该支持它:
SELECT CASE WHEN Invoice_Type_Code = 'C' THEN -1 ELSE 1 END * Invoice_Amount
FROM [Forefront].[dbo].[VN_GL_DISTRIBUTION_HEADER_MC]
where [Vendor_Code] =' UnitedEL' and
[Date_List1] > '2011-12-31' and [Date_List1] < '2012-02-01' and
[Company_Code] = 'tmg' 这假设所有的Invoice_Amounts都是正的。
这是Fiddle。
祝好运。
https://stackoverflow.com/questions/14608777
复制相似问题