• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

MySQL - крайне странные непонятки с логикой: selec

  • Автор темы Pukite
  • Дата начала
Статус
Закрыто для дальнейших ответов.
P

Pukite

Привет, коллеги!

Имеем таблицу tabula и в ней множество столбцов, в том числе столбец datums, определенный как date not null, там хранятся разные даты. Задача: выбрать из таблицы все записи между 2003-10-20 и 2003-10-21, записываю как select * from tabula where datums>='2003-10-20' and datums-'2003-10-21', выбираются строки с совсем другими значениями этого столбца :)

Что я делаю не так?
 
?

????

В transact-SQL (MS SQL Server) вот этот код выдает все значения с 1 января 2001 года по 1 феврял 2001 года включительно. Т.е. месяц идет первым в дате!!!(но можно и как у тебя ГГГГ/ММ/ДД).
Код:
select datums from XXX
where datums between '01/01/2001' and '02/01/2001'
По моему, MySQL тоже поддерживает between - может лучше юзать его??? А то
Код:
select * from tabula where datums>='2003-10-20' and datums-'2003-10-21'
IMHO неправильно (может была опечатка?) правильнее
Код:
select * from tabula where datums>='2003-10-20' and datums<='2003-10-21'
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!