Извлечь только месяц в запросе CodeIgniter - PullRequest
0 голосов
/ 04 апреля 2019

Я хочу сделать запрос, где я получаю день рождения людей в текущем месяце, у меня проблемы с MONTH (), он не работает для меня, формат даты в базе данных: 18.04.1990, и я хочу сравнить, если текущая дата месяца ('m') равна месяцу базы данных.

Есть предложения?

Ответы [ 4 ]

1 голос
/ 10 апреля 2019

Используйте DATE_FORMAT в своем запросе, лучше выбрать данные, соответствующие только значению месяца. Применить приведенный ниже пример кода:

<?php
$this->db->select('*')->from('Table Name');
$qry=$this->db->where('DATE_FORMAT(add_date,"%m")',$select_month)->get()->result();
print_r($qry);
?>

Для более подробной информации посетите здесь: DateFormat в Codeigniter

1 голос
/ 05 апреля 2019

вы можете попробовать это

SELECT * FROM table_name where extract(month from BirthDate) = date("m");

, где date ("m") возвращает текущий месяц, а BirthDate - это имя столбца, в котором вы сохранили дату рождения.

0 голосов
/ 05 апреля 2019

Попробуйте это

"select  month(str_to_date(birthdate), '%Y/%m/%d')
from users  
where month(str_to_date(birthdate), '%Y/%m/%d') = '$month'"

Здесь, я предполагаю, что ваш разделитель равен '/'. Пожалуйста, установите разделитель в соответствии с вашей строковой датой, т.е. 2013/05/04 или 2013,05,04 или 2013-05-04

0 голосов
/ 04 апреля 2019

может быть, у вас есть проблемы с конвертацией, попробуйте использовать

 select  month(str_to_date(my_col, '%m/%d/%Y'))
 from my_table  
 where   month(str_to_date(my_col, '%m/%d/%Y')) = month(now())
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...