Sử dụng CROSS APPLY
, có thể được sử dụng để xác định các trường bí danh và sau đó tham chiếu đến chúng:
SELECT A.a,
A.b,
B.c,
CalculatedValue,
B.d
FROM
dbo.TableA A
INNER JOIN
dbo.TableB B
ON (...)
CROSS APPLY
(SELECT (CASE WHEN ... THEN ... ELSE ... END)) CxA(CalculatedValue)
WHERE CalculatedValue BETWEEN @DayStart AND @DayEnd
GROUP BY A.a, CalculatedValue, B.c
CxA
chỉ là một bí danh và bạn có thể đặt tên nó bất cứ thứ gì bạn thích.