Мне нужно несколько расчетов в одном утверждении - PullRequest
2 голосов
/ 15 декабря 2011
SELECT PrisID, 
       Navn, 
       [Vægt (g)], 
       [RåvarePris(øre)], 
       Produktionsomk, 
       [RåvarePris(øre)] + Produktionsomk AS NettoPris, 
       NettoPris * 25 AS Moms, 
       NettoPris + Moms AS PrisInclMoms, 
       PrisInclMoms * 100 AS [Pris(100gr)]
FROM PrislisteBolsjer  

1 Ответ

3 голосов
/ 15 декабря 2011

Вы не можете использовать псевдонимы в том же файловом списке, в котором они созданы.

Вы можете использовать cross apply, чтобы выполнить вычисление, которое вам нужно использовать повторно.

SELECT PrisID, 
       Navn, 
       [Vægt (g)], 
       [RåvarePris(øre)], 
       Produktionsomk, 
       T1.NettoPris, 
       T2.Moms, 
       T3.PrisInclMoms, 
       T3.PrisInclMoms * 100 AS [Pris(100gr)]
FROM PrislisteBolsjer
  CROSS APPLY (SELECT [RåvarePris(øre)] + Produktionsomk) AS T1(NettoPris)
  CROSS APPLY (SELECT T1.NettoPris * 25) AS T2(Moms)
  CROSS APPLY (SELECT T1.NettoPris + T2.Moms) AS T3(PrisInclMoms)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...