MySql между 2 запросами диапазона дат - PullRequest
0 голосов
/ 07 сентября 2018

Здравствуйте, у меня один вопрос, у меня одно имя столбца - logs, и у меня есть эти данные:

04-9-2018 17:53:48
06-9-2018 12:07:13
16-11-2018 12:04:17
23-11-2018 12:11:59

Мой запрос:

SELECT * 
FROM `table` 
WHERE logs BETWEEN '06-7-2018 00:53:48' AND '07-9-2018 23:53:48'

Результат просто: 06-9-2018 12: 07: 13

Для этого мой запрос начинается с 06 июля и заканчивается 07 сентября , поэтому не отображается 04-9-2018 17: 53: 48

для более полной базы данных, это ссылка: http://sqlfiddle.com/#!9/f4f2ca/3

1 Ответ

0 голосов
/ 07 сентября 2018

потому что ваш тип данных журналов не дата / время

вы определяете во время создания таблицы logs varchar (250) тип

Теперь измените его на datetime и проверьте, что он будет работать

http://sqlfiddle.com/#!9/5c36d/1

CREATE TABLE IF NOT EXISTS `table` (
  `logs` datetime  NOT NULL

) DEFAULT CHARSET=utf8;
INSERT INTO `table` (`logs`) VALUES
  ('2018-09-04 17:53:48'),

  ('2018-09-06 12:07:13'),

  ('2018-11-16 12:04:17'),

  ('2018-11-23 12:11:59');

select * from `table` where logs BETWEEN 
'2018-07-06 00:53:48' AND '2018-09-07 23:53:48'

logs
2018-09-04T17:53:48Z
2018-09-06T12:07:13Z
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...