![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 16.09.2009
Сообщений: 18
|
![]()
Добрый день, уважаемые! Прошу вас помочь разобраться с такой задачкой:
есть БД (IB/Firebird), с таблицей, в которой в одном из столбцов записаны значения даты-времени. Значения отличаются на 1 секунду. Как возможно произвести выборку этих значений с некоторым интервалом (от 1 сек, до 23:59:59), который задается пользователем? Возможно ли это сделать средствами лишь SQL запросов? Работаю с Borland Delphi, FIBPlus, IB/Firebird. |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 12.02.2007
Сообщений: 360
|
![]()
1) возможно. SELECT *
FROM Table WHERE time BETWEEN 00:00:00 AND 23:59:59; 2) См. Выше |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 16.09.2009
Сообщений: 18
|
![]()
не совсем доступно объяснил, попробую уточнить:
как мне из этого интервала времени (допустим, одни сутки, на каждую секунду которых приходится одна запись таблицы) выбрать каждую 10 запись? Т.е. с интервалом в 10 сек., или с интервалом в 2 минуты, или в 1 минуту 25 секунд? danekne, что подразумевает вариант номер 2? |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 12.02.2007
Сообщений: 360
|
![]()
2) означает, что реализовано ср-вами SQL
вариант с диапазоном: Запускаем счетчик в делфях с диапазоном заданным, потом делаем SELECT на одну запись с Where time = полесчетчик И в куда то потом это поле суем пока цикл не пройдет |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 16.09.2009
Сообщений: 18
|
![]()
да, такой вариант реализации, используя цикл, в голове крутился
![]() |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 12.02.2007
Сообщений: 360
|
![]()
сталкивался, но не пользовался)
|
![]() |
![]() |
![]() |
#7 |
SQL-коддинг
Участник клуба
Регистрация: 16.01.2009
Сообщений: 1,192
|
![]()
все просто
берете значение с датой-временем и делаете: 1) отрезаете дату 2) время переводите в секунды 3) делите полученное в п.2 на параметр "каждые 1 минута 25 сек", переведенный тоже в секунды - если остаток от деления = ноль, то это наша запись т.е. в фильтре скл-запроса этот пункт будет выглядеть так Код:
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 16.09.2009
Сообщений: 18
|
![]()
Отлично! Благодарю
![]() ![]() |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
С# Запрос на выборку | fobass | Общие вопросы .NET | 2 | 04.02.2010 14:26 |
Запрос на выборку | igordeg | Microsoft Office Access | 3 | 21.01.2010 21:33 |
Запрос на выборку Like | Agapov_stas | Microsoft Office Access | 3 | 02.12.2009 11:09 |
запрос на выборку | МаришаГ | Microsoft Office Access | 5 | 21.08.2009 23:46 |
Запрос на выборку | Ruska882009 | Microsoft Office Access | 2 | 26.02.2009 20:39 |