Здравствуйте, столкнулся с такой проблемой, что делаю фильтры на сайте, по городу, месяцу и дню.
Для города я сделал приравнивание WHERE city
= $_GET['city']
Вот сам запрос:
$cat_result = mysqli_query( "SELECT * FROM `poster` WHERE `cat` = '".$cat_q['id']."' AND `city` = '".$_GET['city']."'");
Не могу сделать такой же фильтр для месяца и дня, потому что эти данные хранятся в одном столбце формата datetime и имеет вид 0000-00-00 00:00:00
Вот допустим дата 2017-09-21 19:00:00 месяц этой даты 09.Мне его нужно = к $_GET['month'] (Сам монтх = 09) то есть если я буду приравнивать запрос в таком виде
$cat_result = mysqli_query( "SELECT * FROM `poster` WHERE `cat` = '".$cat_q['id']."' AND `date` = '".$_GET['month']."'");
не будет работать ибо будет такое 2017-09-21 19:00:00 = 09
А мне нужно сразу в запросе выбрать лишь месяц.
Надеюсь, что разложил всё по полочкам :)
Заранее спасибо !
Попробуйте такой вариант. Давно с MySQL не работал — не знаю будет или нет эффективно работать.
SELECT
p.id
, p.city
FROM
poster p
WHERE
YEAR(p.date) = 2017
AND MONTH(p.date) = 9
;
"SELECT * FROM poster
WHERE cat
= '".$cat_q['id']."' AND DATE_FORMAT(date
, '%m') = '".$_GET['month']."'"
Виртуальный выделенный сервер (VDS) становится отличным выбором
Как сделать так что бы при использовании distinct или может другим способом пары типа 10\20 и 20\10 считались одинаковыми? И не дублировались в запросе?
Я хочу создать сайт который максимально дружелюбен с SEOОднако, я знаю node
Почему то время выводится с отставанием в 2 часа 50 минутКак сделать так, чтобы выводилось правильно?
При отправке значения не вносятся в таблицу (в phpmyadmin запрос работает)