MYSQL 按另一个表列排序但需要一些(和)条件
MYSQL order by another tables column but needs some (and) conditions
这是数据库表和一些记录
我想要实现的是
select 产品排序条件 (ORDER BY) 中的所有内容都是
首先,products_campaign end_date ASC。
二、产品评分DESC
但是 WHERE 条件是 products_campaign 启用等于 1
结果如此。我想将所有产品显示为排序,首先它有活动的活动(启用)按 end_date 排序,如果没有则按分数排序。
提及:有些产品在products_campaign中没有记录(e.g.productID:104)。
我尝试使用 LEFT JOIN,但 productID 104 不会 selected 到结果列表中。
有什么帮助吗?
最好的问候
检查这是否有帮助
SELECT A.*
FROM PRODUCTS A LEFT OUTER JOIN
(SELECT * FROM PRODUCTS_CAMPAIGN WHERE ENABLE = 1) AS B
ON A.PRODUCT_ID = B.PRODUCT_ID
ORDER BY B.END_DATE ASC, A.SCORE DESC
这是数据库表和一些记录
我想要实现的是 select 产品排序条件 (ORDER BY) 中的所有内容都是 首先,products_campaign end_date ASC。 二、产品评分DESC 但是 WHERE 条件是 products_campaign 启用等于 1
结果如此。我想将所有产品显示为排序,首先它有活动的活动(启用)按 end_date 排序,如果没有则按分数排序。 提及:有些产品在products_campaign中没有记录(e.g.productID:104)。 我尝试使用 LEFT JOIN,但 productID 104 不会 selected 到结果列表中。
有什么帮助吗? 最好的问候
检查这是否有帮助
SELECT A.*
FROM PRODUCTS A LEFT OUTER JOIN
(SELECT * FROM PRODUCTS_CAMPAIGN WHERE ENABLE = 1) AS B
ON A.PRODUCT_ID = B.PRODUCT_ID
ORDER BY B.END_DATE ASC, A.SCORE DESC