Форум программистов, компьютерный форум, киберфорум
MySQL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/88: Рейтинг темы: голосов - 88, средняя оценка - 4.94
55 / 55 / 21
Регистрация: 01.03.2016
Сообщений: 594
1

Выборка в промежутке дат (по условию)

10.08.2016, 00:24. Показов 15811. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Не могу ни как составить выборку по условию промежутка дат.
Даты храню в тайм штамп, но если даты нет, то в поле стоит 0
тип поля INT(10),
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.08.2016, 00:24
Ответы с готовыми решениями:

Выборка значений в промежутке дат ADOQuery, TimeDataPicker, Delphi
Не получается выборка по заданному диапазону дат. Необходимо выводить записи с датами между...

Выборка данных по условию - разность двух полей дат не более суток
Уважаемые гуру! В таблице DataSet есть 2 поля типа DateTime. Нужно с помощью select выбрать...

Запрос в промежутке дат
вообщем делаю такой запрос, ругается на "<=" или "=>". почему такая проблема? как правильно...

Фильтрация записей в промежутке дат.
Добрый день форумчане, столкнулся с такой проблемой. Имеется БД и вся информация из нее выводится...

4
504 / 247 / 75
Регистрация: 31.10.2010
Сообщений: 742
10.08.2016, 02:04 2
Лучший ответ Сообщение было отмечено 53ifbb как решение

Решение

53ifbb, что мешает использовать SELECT, операторы сравнения и AND

Добавлено через 16 минут
MySQL
1
SELECT * FROM `TableName` WHERE `timestamp` >= '2001-01-01 00:00' AND `timestamp` >= '2002-01-01 00:00'
или так
MySQL
1
SELECT * FROM `info` WHERE date >= '2010-01-01' AND date >= '2010-01-02' LIMIT 100
Добавлено через 5 минут
53ifbb, вот ещё пример с сортировкой по дате и ограничением числа строк в выдаче
MySQL
1
2
3
4
5
6
SELECT *
FROM `info`
WHERE `date` >= '2010-01-01'
AND `date` >= '2010-01-02'
ORDER BY date
LIMIT 100
1
55 / 55 / 21
Регистрация: 01.03.2016
Сообщений: 594
10.08.2016, 08:38  [ТС] 3
RefSol, поздно было, устал программировать вот и не соображала голова. Поторопился с созданием темы.. эх.
п.с. вторую колонку подставлял с другим именем) вот и не работало

Добавлено через 2 минуты
RefSol, У вас в примере везде стоит >=, А вторым оператором должно быть =<
0
шКодер самоучка
2227 / 1921 / 927
Регистрация: 09.10.2013
Сообщений: 4,262
Записей в блоге: 7
10.08.2016, 09:03 4
53ifbb, в SQL есть специальный оператор для таких случаев - between называется
Служит для выборки диапазонов включая границы
MySQL
1
2
3
4
SELECT * FROM `info`
    WHERE `date` BETWEEN '2010-01-01' AND '2010-01-02'
ORDER BY `date`
LIMIT 100
лог из консольки
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
tests=> select * from orders;
 onum |   amt   |   odate    | cnum | snum 
------+---------+------------+------+------
 3001 |   18.69 | 1990-03-10 | 2008 | 1007
 3003 |  767.19 | 1990-03-10 | 2001 | 1001
 3002 |  1900.1 | 1990-03-10 | 2007 | 1004
 3005 | 5160.45 | 1990-03-10 | 2003 | 1002
 3006 | 1098.16 | 1990-03-10 | 2008 | 1007
 3009 | 1713.23 | 1990-04-10 | 2002 | 1003
 3007 |   75.75 | 1990-04-10 | 2004 | 1002
 3008 |    4723 | 1990-05-10 | 2006 | 1001
 3010 | 1309.95 | 1990-06-10 | 2004 | 1002
 3011 | 9891.88 | 1990-06-10 | 2006 | 1001
(10 строк)
 
tests=> select * from orders where odate between '1990-04-10' and '1990-06-10';
 onum |   amt   |   odate    | cnum | snum 
------+---------+------------+------+------
 3009 | 1713.23 | 1990-04-10 | 2002 | 1003
 3007 |   75.75 | 1990-04-10 | 2004 | 1002
 3008 |    4723 | 1990-05-10 | 2006 | 1001
 3010 | 1309.95 | 1990-06-10 | 2004 | 1002
 3011 | 9891.88 | 1990-06-10 | 2006 | 1001
(5 строк)
0
504 / 247 / 75
Регистрация: 31.10.2010
Сообщений: 742
10.08.2016, 13:43 5
53ifbb, да, согласен, ошибка невнимательности, должно быть,
MySQL
1
2
3
4
5
6
SELECT *
FROM `info`
WHERE `date` >= '2010-01-01'
AND `date` <= '2010-01-02'
ORDER BY date
LIMIT 100
0
10.08.2016, 13:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.08.2016, 13:43
Помогаю со студенческими работами здесь

Определенная дата в промежутке дат
Здравствуйте. Есть два поля для ввода. Пользователь должен ввести туда даты. Программа должна...

Вывести файлы в промежутке указанных дат создания
Вывести список всех файлов из указанной директории, дата создания которых лежит в указанном...

Авто-расчет кол-ва дней в промежутке заданных дат.
Привет друзья! Стоит задача - требуется, что бы в ячейке отображалось число (количество) -...

Запись даных в определенном промежутке дат по четным/нечетным неделям
Здрасти, уменя такой вопрос, надо сделать так, выбераю начальную дату кпремеру 21.2.2012 и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru