Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2018.04.15;
Скачать: [xml.tar.bz2];

Вниз

Вычисляемое поле в SQL   Найти похожие ветки 

 
yurikon   (2011-07-12 13:55) [0]

Добрый день!

Имеется запрос:


SELECT F1,  sum(f3),  "F2" =
 CASE When sum(f3) > 0 then A
         When sum(f3) < 0 then B END
FROM table1


и sum(f3) может несколько раз встречаться в запросе. Собственно, возник вопрос - сервер будет несколько раз вычислять эту сумму или сообразит, что она уже посчитана?

Возможно, есть более грамотный вариант этого запроса?

С уважением, Юрий.


 
Медвежонок Пятачок ©   (2011-07-12 14:13) [1]

select from select


 
b z   (2011-07-12 14:23) [2]

with  ( select ) select
ps: MSSQL >= 2005


 
Труп Васи Доброго ©   (2011-09-21 11:41) [3]

не знаю тонкостей MSSQL, но может такое прокатит
SELECT F1,  sum(f3) As summ,  "F2" =
CASE When summ > 0 then A
        When summ < 0 then B END
FROM table1


 
stas ©   (2011-09-21 12:05) [4]

Труп Васи Доброго ©   (21.09.11 11:41) [3]
В MSSQL такое не прокатит.

yurikon   (12.07.11 13:55)
Должен понять.
1. "F2" = зачем кавычки?
Проверь скорость и посмотри план.
свое го варианта
и этого
Select F1,SUMM,CASE When sum(SUMM) > 0 then A When sum(SUMM) < 0 then B END
FROM
(
SELECT F1,  sum(f3) as SUMM,
FROM table1
) AS Q



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2018.04.15;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.001 c
15-1472074202
Юрий
2016-08-25 00:30
2018.04.15
С днем рождения ! 25 августа 2016 четверг


2-1461228352
vegarulez
2016-04-21 11:45
2018.04.15
Как передать массив в Поток?


15-1472110107
DayGaykin
2016-08-25 10:28
2018.04.15
Целочисленный MulDiv


2-1460845875
Signal
2016-04-17 01:31
2018.04.15
Братцы как ускорить процесс?


11-1266808579
Ruzzz
2010-02-22 06:16
2018.04.15
Стр. функция Format





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский