SELECT IF(price == null, 0, price) FROM trips
WHERE id=9 and prices LIKE "%|s|1|%" and prices LIKE "%|ss|24|%"
Если LIKE "%|ss|2|% "сделайте эту цену, если LIKE "%|ss|24|%" ничего не делает, значит, вы должны сделать его 0".
@ADyson нет кода ошибки - null Мне нужно 0
Предположительно, вы, вероятно, захотите использовать or вместо and в предложении where, поскольку маловероятно, что ваше поле prices будет содержать оба этих значения одновременно. Но это всего лишь предположение, потому что, как я сказал выше, вы не предоставили нам достаточно информации, чтобы мы точно знали ответ. Кроме того, это кажется, как будто вы можете хранить несколько разных значений внутри своего поля prices, что является признаком плохого дизайна, который не нормализован должным образом. Прочтите о нормализации базы данных и проектировании отношений сущностей, если вам нужно улучшить структуру таблицы.






Ничего не отображается, потому что нет значения цены, содержащего "| s | 1 |" и "| ss | 24 |". Я думаю, вам следует использовать вместо этого ИЛИ.
SELECT IF(price == null, 0, price) FROM trips
WHERE id=9 and (prices LIKE "%|s|1|%" OR prices LIKE "%|ss|24|%");
Здесь есть вопрос? У вас есть конкретная проблема или ошибка? К сожалению, ваше предложение - тарабарщина, я понятия не имею, о чем вы спрашиваете. Прошу отредактировать и уточнить. Если вы хотите, чтобы запрос давал какие-то конкретные результаты, вам также необходимо объяснить структуру вашей таблицы и предоставить нам некоторые образцы данных для работы, а также привести пример ожидаемого результата.