Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Warunek w zapytaniu
Forum PHP.pl > Forum > Bazy danych > Microsoft SQL Server / MSDE
Fantazyn
Witam,

Mam (w uproszczeniu) podobne zapytanie w bazie danych:

select A.Name
, A.Gender
, SA.SalePrice as Price
, case when SA.max(SalePrice) > 200
then SA.max(SalePrice)
else 200 end AS PriceType
from Animal A

i zależy mi, żeby pozbyć się podwójnego obliczenia SA.max(SalePrice), czy można w jakiś normalny sposób to osiągnać?

Pozdrawiam
dmateo
Moze wrzucenie wyniku zapytania do dodatkowej kolumny w tabeli tymczasowej i praca na niej.
clucky
Najprostszym sposobem jest zastosowanie podzapytania:

select Name,Gender,Price,
case when max > 200
then max else 200 end as PriceType
from
(select A.Name
, A.Gender
, A.SalePrice as Price
, SA.max(SalePrice) as max
from Animal A) as T

Tylko jest tu błąd przy SA.SalePrice - nie wiem czy dobrze poprawiłem (założyłem, że SA to jest nazwa schematu).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.