Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 11.11.2013, 18:05   #1
Женя32
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 504
Счастье Как выбрать поле таблиции по предпоследней дате записи?

Подскажите пожалуйста, как сделать выборку по предпоследней дате записи?

По самой ранней и самой поздней дате выборка получается без проблем:

PHP код:
('Select Холодная_Вода from счет where Дата=(SELECT max(Дата) from счет)'); 
Но ничего не выводиться если я делаю вот так:


PHP код:
('Select Холодная_Вода from счет where Дата=(SELECT max(Дата)-1 from счет)'); 
В чем ошибка?
Женя32 вне форума Ответить с цитированием
Старый 11.11.2013, 19:03   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

а что такое "предпоследняя дата записи"?
eval вне форума Ответить с цитированием
Старый 11.11.2013, 20:00   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию

Как вариант:
Код:
Select Холодная_Вода from счет 
 where 
      Дата in (SELECT top 2 Дата from счет order by Дата)
and Дата<>(SELECT max(Дата) from счет)
Хотя и не оптимально.

Р.S. Вот почему в крутых СУБД придумали аналитические функции.
P.P.S. А вообще это лучше процедурой с FETCH делать, если аналитику СУБД не поддерживает.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.11.2013, 20:37   #4
Женя32
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 504
Счастье

Цитата:
Сообщение от eval Посмотреть сообщение
а что такое "предпоследняя дата записи"?
Указанная дата в предпоследней или во второй строке(смотря в каком порядке идет сортировка).

Вот например, как вытащить число 120, которое было добавлено 01.10.2013(см. скриншот)?
Изображения
Тип файла: jpg zzzzzzzzzzzzzzzzzzz.jpg (17.2 Кб, 129 просмотров)
Женя32 вне форума Ответить с цитированием
Старый 11.11.2013, 20:50   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию

SELECT top 2 Холодная_Вода from счет order by Дата
Потом в клиенте становись на вторую запись и бери ее данные.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.11.2013, 21:03   #6
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

субд ?
eval вне форума Ответить с цитированием
Старый 11.11.2013, 21:10   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию

Цитата:
субд ?
Судя по всему Access 2003
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.11.2013, 21:24   #8
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

может..

и что делать если записей с "предыдущей" датой > 1
eval вне форума Ответить с цитированием
Старый 11.11.2013, 21:34   #9
Женя32
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 504
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
SELECT top 2 Холодная_Вода from счет order by Дата
Потом в клиенте становись на вторую запись и бери ее данные.
Спасибо большое за помощь.

Цитата:
Сообщение от Stilet Посмотреть сообщение
Судя по всему Access 2003
Нет, Access 2010.

Последний раз редактировалось Stilet; 11.11.2013 в 21:39.
Женя32 вне форума Ответить с цитированием
Старый 11.11.2013, 21:42   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию

Цитата:
может..
Просто я заглянул в предидущую тему )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ПОИСК В БД .DBF ПО ВРЕМЕНИ И ДАТЕ В ПОЛЕ ТИПА DATETIME ЛисЁНЫШ БД в Delphi 10 05.06.2010 20:02
Подстановка значения переменной как поле записи Noktikus Общие вопросы Delphi 2 17.04.2010 17:01
Выбрать ячейки по дате Aleksandr Microsoft Office Excel 1 13.11.2009 15:29
Как переносить часть записи из одной таблийы в подстановочное поле другой? Andr_zdes Помощь студентам 2 22.05.2009 09:37
Как выбрать при помощи SQL записи из набора данных pris БД в Delphi 4 22.05.2007 10:24


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Здесь нужно купить рекламу за 7 тыс руб в месяц! )
пишите сюда - alarforum@yandex.ru
ИКС 840