Извлекать только месяц из запроса CodeIgniter

#mysql #codeigniter

#mysql #codeigniter

Вопрос:

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

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

Комментарии:

1. к какому типу данных относится ваш столбец даты?? строка или дата-время?

2. Hello — это строка

Ответ №1:

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

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

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

Ответ №2:

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

 "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

Ответ №3:

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

  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())
  

Комментарии:

1. Я получаю следующую ошибку: Неправильный подсчет параметров при вызове встроенной функции ‘str_to_date’