2015-02-11 114 views
-1

我查询乘两个列之间的值SQL

SELECT DATEDIFF(day,SD.STARTDATE,SD.ENDDATE) AS TotalDays ,amount 
FROM staydetails 

例如,量列可以具有100的值,我需要相乘的totaldaysamount值与结果添加到另一列。

回答

1

计算列只需添加到您的选择列表,像这样:

select 
DATEDIFF(day,SD.STARTDATE,SD.ENDDATE) AS TotalDays , 
amount, 
(DATEDIFF(day,SD.STARTDATE,SD.ENDDATE) * amount) AS CalculatedAmount 
from staydetails 

请注意,您将需要重复DATEDIFF功能 - 你不能使用别名TotalDays。

0

非常简洁明了:

select DATEDIFF(day,SD.STARTDATE,SD.ENDDATE) AS TotalDays ,amount, 
     (DATEDIFF(day,SD.STARTDATE,SD.ENDDATE) * amount) as Result 
from staydetails 
0

就乘他们像这样:

select DATEDIFF(day,SD.STARTDATE,SD.ENDDATE) AS TotalDays , 
     amount , 
     DATEDIFF(day,SD.STARTDATE,SD.ENDDATE) * amount AS CalculatedValue 
from staydetails 

您可能试图引用TotalDays像这样:TotalDays * amount,但你必须对基础进行计算值,这是计算结果DATEDIFF而不是别名列的名称。