Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
Василий Т
Guest
Как найти максимальное значение числа в строке?

Есть таблица X со столбцами
Sum1,Sum2,Sum3,Sum4,Sum5,Sum6,Sum6
1 56 30 50 6 10 2


Каким запросом определить,что число в колонке Sum2 имеет максимальное значение?
23 ноя 09, 10:35    [7962700]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
buven
Member

Откуда:
Сообщений: 792
PIVOT
?

Проводить жизнь в ожидании мессии, который придёт и спасёт мир, всё-равно, что ждать палку в тетрисе.
Даже если и появится, то ты к тому времени наберёшь такую гору дерьма, что те будет уже абсолютно пох... :)
23 ноя 09, 10:38    [7962730]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
Паганель
Member

Откуда: Винница
Сообщений: 22552
как-то так
select (select max(s)
          from (select Sum1 union all
                select Sum2 union all
                select Sum3 union all
                select Sum4 union all
                select Sum5 union all
                select Sum6
                ) as t(s)
        ) as max_s
  from mytable
23 ноя 09, 10:40    [7962749]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
iap
Member

Откуда: Москва
Сообщений: 46975
Паганель
как-то так
select (select max(s)
          from (select Sum1 union all
                select Sum2 union all
                select Sum3 union all
                select Sum4 union all
                select Sum5 union all
                select Sum6
                ) as t(s)
        ) as max_s
  from mytable
SQL2008
select (select max(s) from (values(Sum1),(Sum2),(Sum3),(Sum4),(Sum5),(Sum6)) as t(s)) as max_s
from mytable
23 ноя 09, 10:59    [7962881]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
Василий Т
Guest
не работает так
23 ноя 09, 11:00    [7962884]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
Andrey Sribnyak
Member

Откуда: Киев
Сообщений: 595
Вариант :-)

select 1 id, 1 sum1, 56 sum2,30 sum3,50 sum4,6 sum5,10sum6, 2 sum7 into #test
select id,  max(ss)
from
(select * from #test) p
unpivot
(ss FOR r IN (sum1,sum2,sum3,sum4,sum5,sum6,sum7)
) as unpvt
group by id
23 ноя 09, 11:03    [7962921]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
iap
Member

Откуда: Москва
Сообщений: 46975
Василий Т
не работает так
Не работает что?
23 ноя 09, 11:04    [7962933]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
DENIS_CHEL
Member

Откуда:
Сообщений: 23097
Василий Т, результаты запроса: “SELECT @@VERSION” опубликуйте пожалуйста, мне интересно на каком сервере или версии скуля, запрос Паганеля мог не отработать…

---------------------------------------------------------
- Ну вы тут и нафлудили! - сказал Геракл, зайдя на Авгиев форум
23 ноя 09, 11:30    [7963111]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
iap
Member

Откуда: Москва
Сообщений: 46975
DENIS_CHEL
Василий Т, результаты запроса: “SELECT @@VERSION” опубликуйте пожалуйста, мне интересно на каком сервере или версии скуля, запрос Паганеля мог не отработать…

---------------------------------------------------------
- Ну вы тут и нафлудили! - сказал Геракл, зайдя на Авгиев форум
Мне кажется, речь идёт не о запросе Паганеля, а о запросе Василия Т
после того, как он его у себя творчески переработал...
23 ноя 09, 11:34    [7963147]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
Василий Т
Guest
Microsoft SQL Server 2000 - 8.00.2039 (Intel X86) May 3 2005 23:18:38 Copyright (c) 1988-2003 Microsoft Corporation Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)


Запрос отработал!!! Но не вернул максимальное знаечение!!!
23 ноя 09, 11:35    [7963150]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
DENIS_CHEL
Member

Откуда:
Сообщений: 23097
iap
Мне кажется, речь идёт не о запросе Паганеля, а о запросе Василия Т
после того, как он его у себя творчески переработал...


Может быть вы и правы… Я не уверен, что он использует MS SQL SERVER…
Как бы то ни было, ждем ТС…

---------------------------------------------------------
- Ну вы тут и нафлудили! - сказал Геракл, зайдя на Авгиев форум..
23 ноя 09, 11:38    [7963167]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
iap
Member

Откуда: Москва
Сообщений: 46975
DENIS_CHEL
iap
Мне кажется, речь идёт не о запросе Паганеля, а о запросе Василия Т
после того, как он его у себя творчески переработал...


Может быть вы и правы… Я не уверен, что он использует MS SQL SERVER…
Как бы то ни было, ждем ТС…

---------------------------------------------------------
- Ну вы тут и нафлудили! - сказал Геракл, зайдя на Авгиев форум..
Он вроде написал, что SQL2000
Но ведь достаточно понаставить в UNIONах кореллированного подзапроса FROMы, например
(а это так естественно для других серверов, да и ANSI SQL этого требует),
и результат действительно может оказаться неправильным!
23 ноя 09, 11:46    [7963238]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
Василий Т
Guest
declare @t table (Summa money)

insert @t

Select Sum1
From Z
Union all
Select Sum2
From Z
Union all
Select Sum3
From Z
Union all
Select Sum4
From Z
Union all
Select Sum5
From Z
Union all
Select Sum6
From Z

Select Max(Summa)
From @t

Вот так работает!!!!
23 ноя 09, 11:46    [7963239]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
DENIS_CHEL
Member

Откуда:
Сообщений: 23097
SELECT MAX(max_s) FROM (select (select max(s)
          from (select Sum1 union all
                select Sum2 union all
                select Sum3 union all
                select Sum4 union all
                select Sum5 union all
                select Sum6
                ) as t(s)
        ) as max_s
  from mytable) AS t

Вам нужен максимум из всех максимальных значений?

---------------------------------------------------------
- Ну вы тут и нафлудили! - сказал Геракл, зайдя на Авгиев форум..
23 ноя 09, 11:46    [7963241]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
Василий Т
Guest
DENIS_CHEL
SELECT MAX(max_s) FROM (select (select max(s)
          from (select Sum1 union all
                select Sum2 union all
                select Sum3 union all
                select Sum4 union all
                select Sum5 union all
                select Sum6
                ) as t(s)
        ) as max_s
  from mytable) AS t

Вам нужен максимум из всех максимальных значений?

---------------------------------------------------------
- Ну вы тут и нафлудили! - сказал Геракл, зайдя на Авгиев форум..

Да!!!!
23 ноя 09, 11:57    [7963315]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом!Как найти максимальное значение числа в строке?  [new]
Василий Т
Guest
Ваш запрос тоже работает!!!
23 ноя 09, 12:00    [7963339]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить