Запрос содержит выборку
spw1.workers LIKE '%" . $arr['workerID'] . "%' or LIKE '%" . $_COOKIE['shop_id'] . "%', но поле spw1.workers (varchar) может быть равным [40] или [170, 240], при выборке через LIKE '%40%' в выборку попадут 2 записи
Как можно сделать, чтобы была запись равная только [40]?
(SELECT spw1.*, IF(spw1.status = 3, 5,
IF(spw1.status = 2, 4, IF(spw1.status = 0, 2, 0))) as al
FROM SID_planerWork spw1
WHERE spw1.type > 0 AND (spw1.workers LIKE '%" . $arr['workerID'] . "%'
or LIKE '%" . $_COOKIE['shop_id'] . "%'))
UNION ALL
(SELECT spw2.*,
IF(spw2.data_close_worker = '0000-00-00' AND spw2.data_end_rec < now(), 3, 1) as al
FROM SID_planerWork spw2 where spw2.type = 0)
ORDER BY al desc;")