Как использовать условие if else в mysql
Вот мой код
$couponQry = Coupon::select('*')
->where('generate_coupon', '=', 0)
->where('coupon_soft_delete', '=', 0)
->where('expiry_date', '>=', date('Y-m-d'))
->whereRaw("(coupon_limitation=1 AND coupon_usage>coupon_used) OR (coupon_limitation=0 AND coupon_used>=0)");
$couponData = $couponQry->get();
coupon_limitation | coupon_usage | coupon_used | generate_coupon
1 1 1 0
0 0 5 0
Здесь я должен получить только второй ряд. Потому что coupon_limitation равен 1, а если coupon_limitation равен 1, coupon_usage должен быть больше, чем coupon_used (Активные купоны, Неограниченное использование купона). Если coupon_usage и coupon_used равны, и coupon_limitation 1 заканчивается срок действия купона (заархивированный купон, использование ограниченного купона).
Если coupon_limitation равен 0, мне не нужно проверять coupon_used и coupon_usage (всегда активен до конца срока действия). Спасибо