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

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

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


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

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

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

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


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

а что такое "предпоследняя дата записи"?
eval вне форума Ответить с цитированием
Старый 11.11.2013, 21: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, 21:37   #4
Женя32
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 445
Счастье

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

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

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

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

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

может..

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

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

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

Последний раз редактировалось Stilet; 11.11.2013 в 22:39.
Женя32 вне форума Ответить с цитированием
Старый 11.11.2013, 22: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 21:02
Подстановка значения переменной как поле записи Noktikus Общие вопросы Delphi 2 17.04.2010 18:01
Выбрать ячейки по дате Aleksandr Microsoft Office Excel 1 13.11.2009 16:29
Как переносить часть записи из одной таблийы в подстановочное поле другой? Andr_zdes Помощь студентам 2 22.05.2009 10:37
Как выбрать при помощи SQL записи из набора данных pris БД в Delphi 4 22.05.2007 11:24