Выбор покупателя исходя из условия

153
25 июля 2018, 06:10

Есть такая задача выбрать покупателей, у которых возраст от 10 до 50 лет? Для решения задачи написал такой скрипт

SELECT pokupatel FROM humans WHERE date_rojdenia BETWEEN 10 and 50;

но проблема в том, что поле date_rojdenia хранит значения в unixtime и в тоге у меня выводится совсем не то, подскажите как решить проблему?

Answer 1

10 лет назад:

DATE_SUB(NOW(), INTERVAL 10 YEAR)

50 лет назад:

DATE_SUB(NOW(), INTERVAL 50 YEAR)

Получается так:

SELECT pokupatel FROM humans WHERE date_rojdenia 
   BETWEEN DATE_SUB(NOW(), INTERVAL 50 YEAR) 
       and DATE_SUB(NOW(), INTERVAL 10 YEAR);
Answer 2

Проблему с временной меткой решил так, может кому-нибудь пригодится

SELECT pokupatel FROM humans WHERE date_rojdenia 
BETWEEN UNIX_TIMESTAMP(NOW() - INTERVAL 50 YEAR) and UNIX_TIMESTAMP(NOW() - INTERVAL 10 YEAR);
READ ALSO
MySQL и функция из своей длл

MySQL и функция из своей длл

Есть своя, самописная, функция хэширования пароля (не суть важно что конкретно делает сама функция, больше интересен теоретический аспект...

156
Импорт дампа базы данных MySQL

Импорт дампа базы данных MySQL

Пытаюсь импортировать дамп боевой БД на mySQLСначала ругался на несоответствующую версию языка

207
Изи парсинг Python + lxml по XPath

Изи парсинг Python + lxml по XPath

Всем приветУма не приложу в чем проблема, пожалуйста помогите =)

186
Почему Ajax постоянно выдает ошибку?

Почему Ajax постоянно выдает ошибку?

Постоянно выдает ошибкуПробовал разные варианты ajax отправки - результат тот же

195