0
이전에 정의한 두 열의 값을 함께 추가하려고합니다. 쿼리 내에서이 작업을 수행 할 수있는 방법이 있는지 궁금합니다. 다음은 사용자 지정 명명 된 열 계산
내 코드와 나는 명명 된 열 SP 및 IP의 함께 값을 추가하려고 :DECLARE @Flag nvarchar(10),
@Month int,
@Year int,
@ViewName as nvarchar(50),
@PrePlumb as int
SET @Flag = 'Grid'
SET @Month = 01
SET @Year = 2013
SET @ViewName = 'Delivered'
SELECT PID,
[Customer Name],
[Project Name],
Delivered1,
CAST(SUM(Production) AS decimal(10, 2)) AS Value,
CAST(SUM(SellingPrice) AS decimal(10, 2)) AS SP,
CAST(SUM(IP) AS decimal(10, 2)) AS IP,
CAST(SUM(Plumb) AS Decimal(10, 2)) As Plumb
FROM (
SELECT SpecificationHeader.Qno,
SpecificationHeader.PID,
Customers3.[Customer Name],
Projects2.[Project Name],
MAX(SpecDetailsExt.Delivered) AS Delivered1,
MAX(SpecDetails.SellingPrice) AS SellingPrice,
MAX(SpecDetails.FactoryRate) AS Production,
(CASE
WHEN MAX(SpecificationHeader.[Installation Costs]) = 'Yes'
THEN MAX(specdetails.InstallationCostPlusMargin) ELSE 0
END) AS IP,
(CASE
WHEN MAX(SpecificationHeader.[Plumbing Costs]) = 'Yes'
THEN MAX(specdetails.PlumbCostPlusMargin) ELSE 0
END) AS Plumb,
MAX(CONVERT(date, SpecDetailsExt.Delivered, 3)) AS Delivered
FROM SpecDetailsExt
INNER JOIN SpecDetails
ON SpecDetailsExt.SrecId = SpecDetails.SrecId
INNER JOIN SpecificationHeader
ON SpecDetails.QuoteNo = SpecificationHeader.Qno
INNER JOIN Projects2
ON SpecificationHeader.PID = Projects2.PID
INNER JOIN Customers3
ON Projects2.[Customer Number] = Customers3.[Customer Number]
WHERE (SpecificationHeader.MoveToOrder <> '')
AND (SpecDetailsExt.Delivered <> N'')
AND (DATEPART(MONTH, CONVERT(date, SpecDetailsExt.Delivered , 3)) = @Month)
AND (YEAR(CONVERT(date, SpecDetailsExt.Delivered , 3)) = @Year)
GROUP BY SpecificationHeader.Qno,
Customers3.[Customer Name],
Projects2.[Project Name],
SpecificationHeader.PID,
SpecDetailsExt.SrecId
) AS x
GROUP BY PID,
[Customer Name],
[Project Name],
Delivered1
ORDER BY Delivered1 desc,
[Customer Name],
[Project Name]