![]() |
|
Модераторы: LSD |
![]()
|
|
| Petro123 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Есть табличка, Например
Date Sale 1.01.2007 10 3.01.2007 7 10.01.2007 13 11.01.2007 10 20.01.2007 16 25.01.2007 19 Дана дата(параметр). Нужно выбрать последнюю Sale до этой дата. Select max(t.Date) From t where t.Date<=дата Нашли макс дату до дата, а какой у нее Sale. Есть ли еще какая нибудь групповая функция типа Last или ...? Не хочется делать вложенный запрос, как можно решить задачу проще? |
|||
|
||||
| Sqlninja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 353 Регистрация: 15.5.2006 Где: San Francisco, CA Репутация: 13 Всего: 13 |
Или я чтото не так понял? -------------------- It's better to burn out than to fade away. |
|||
|
||||
| Petro123 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Наверное не так, ...
Зачем группировать по цене? Задачу можно решить с использованием аналитических функций, просто хотелось узнать, как решают такую задачу другие... |
|||
|
||||
| TicTak |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 91 Регистрация: 2.3.2005 Репутация: нет Всего: 1 |
max - функция агрегированния данных, поэтому всё что не обёрнуто в функции агрегирования должно быть сгрупировано.
Зачем? Так намоного проще. И потом, если ты будеш использовать max(t.Date), то ты не сможеш использовать аналитику, т.к. она не групируется. Прийдётся оборочивать в внешний запрос ещё, чтоб сгрупировать. Если писать через аналитику, то у тебя будет 6 дат, так как у тебя 6 строк данных. |
|||
|
||||
| Petro123 |
|
||||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Я прекрасно понимаю, как работает функция МАХ, вопрос не в этом
По всей видимости ты не понял вопроса... Приведи пример... Ничего оборачивать не надо...
Я тебя вообще не понимаю... Добавлено через 1 минуту и 27 секунд
И вобще, ты утверждаешь, что запрос приведенный выше правильный?! Он вообще не верен в рамках данной темы! |
||||||||
|
|||||||||
| TicTak |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 91 Регистрация: 2.3.2005 Репутация: нет Всего: 1 |
||||
|
||||
| Petro123 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Например Дата = 23.01.2007
Результат 23.01.2007 16 Я говорю аналитические функции позволяют решить без вопрос без группировки данных |
|||
|
||||
| TicTak |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 91 Регистрация: 2.3.2005 Репутация: нет Всего: 1 |
Это сообщение отредактировал(а) TicTak - 21.5.2007, 10:02 |
|||
|
||||
![]()
|
| Правила форума "Oracle" | |
|
|
Данный раздел предназначен для обсуждения проблем с Oracle Database, другие продукты Oracle здесь не обсуждаются. Просьба при создании темы, придерживаться следующих правил:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, LSD. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Oracle | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |