У меня есть запрос MySQL, который я пытаюсь запустить в SQLite.Я обнаружил, что условие IF
не работает в SQLite и должно быть преобразовано в CASE
.Поскольку запрос MySQL достаточно велик, чтобы иметь обзор, я надеялся, что кто-нибудь покажет мне, как это должно быть сделано.В одном из многих других запросов MySQL я должен преобразовать в SQLite.
Как только я увижу, как это должно быть сделано в запросе, который я использую (потому что я знаком с ним), я предполагаю, что справлюсьдля остальных.Вот MySQL, который должен работать в SQLite:
select
p.products_model,
pd.products_name,
m.manufacturers_name,
p.products_quantity,
p.products_weight,
p.products_image,
p.products_id,
p.manufacturers_id,
p.products_price,
p.products_tax_class_id,
IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price,
IF(s.status, s.specials_new_products_price, p.products_price) as final_price
from
products_description pd,
products p
left join manufacturers m on p.manufacturers_id = m.manufacturers_id
left join specials s on p.products_id = s.products_id,
products_to_categories p2c
where
p.products_status = "1" and
p.products_id = p2c.products_id and
pd.products_id = p2c.products_id and
pd.language_id = "1" and
p2c.categories_id = "10"