Illegal mix of collations for operation '<=' - MySQL
Формулировка задачи:
Здравствуйте .
Помогите пожалуйста с кодом для базы .
Вот сам кусок кода
При выполнении выдает ошибку в логах . Как правильно прописать неравенство ?
#001271 Illegal mix of collations for operation '<='
SELECT group_id, user_id FROM bb_user_group WHERE time_del <= 'Сегодня, в 19:10' AND time_del != '0000-00-00'
Source : library\includes\cron\jobs\clean_dlstat.php(84) :: db1.99
IP : 127.0.0.1
Date : 2016-04-16 19:10:57
Agent : Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.97 Safari/537.36
Req_URI : /admin/admin_cron.php?mode=run&id=9
Referer : http://СКРЫТО/admin/admin_cron.php?mode=list
Method : GET
PID : 02480
Request : Array
(
[mode] => run
[id] => 9
)
$times_del = DB()->fetch_rowset("SELECT group_id, user_id FROM ". BB_USER_GROUP ." WHERE time_del <= '$time' AND time_del != '0000-00-00'");
Решение задачи: «Illegal mix of collations for operation '<='»
textual
Листинг программы
require(INC_DIR .'functions_group.php'); $time = bb_date(TIMENOW, 'Y-m-d', 'false'); $times_del = DB()->fetch_rowset("SELECT group_id, user_id FROM ". BB_USER_GROUP ." WHERE time_del <= '$time' AND time_del != '0000-00-00'"); foreach($times_del as $row) { delete_user_group ($row['group_id'], $row['user_id']); }
Объяснение кода листинга программы
- Подключение файла функций
functions_group.php
- Получение текущего времени в формате 'Y-m-d'
- SQL-запрос на выборку данных из таблицы
. BB_USER_GROUP .
- Фильтр для выбора только тех строк, где значение поля
time_del
меньше или равно текущему времени и не равно '0000-00-00' - Перебор полученных строк и вызов функции
delete_user_group
для каждой строки - Удаление пользователя из группы, передавая в функцию
delete_user_group
идентификатор группы и идентификатор пользователя - Конец скрипта
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д