webForumDet fria alternativet

Egendefinierat kolumnnamn i where?

Databaser & SQL

2 svar · 289 visningar · startad av inspiro

Medlem sedan sep. 2005673 inlägg
Frågan#1

Hej! har en sql-fråga i sql server som ser ut så här (förenklat):

SELECT
  (kolumnNamn - (SELECT... subfråga)) AS Värde
FROM
  Tabell
WHERE
  Värde > 0

Jag vill alltså hämta "Värde" men bara om det är större än 0, men jag får felet "Invalid column name 'Värde'". Tacksam för hjälp.

Medlem sedan jan. 2005327 inlägg
#2

inspiro skrev:

Hej! har en sql-fråga i sql server som ser ut så här (förenklat):

SELECT
  (kolumnNamn - (SELECT... subfråga)) AS Värde
FROM
  Tabell
WHERE
  Värde > 0

Jag vill alltså hämta "Värde" men bara om det är större än 0, men jag får felet "Invalid column name 'Värde'". Tacksam för hjälp.

SELECT
  (kolumnNamn - (SELECT... subfråga)) AS Värde
FROM
  Tabell
WHERE
  (kolumnNamn - (SELECT... subfråga))  > 0

Nu vet jag ju inte vilket databas det handlar om, men varför inte använda subqueryn i villkoret?

/pebi

Medlem sedan juni 20003 076 inlägg
#3

Eller kapsla in i en ny select:

SELECT * FROM (
     SELECT (kolumnNamn - (SELECT... subfråga)) AS Värde
     FROM Tabell
) AS T
WHERE T.Värde > 0
255 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)