这是我之前的问题的延续。
在以下示例中:
id PRODUCT ID COLOUR
1 1001 GREEN
2 1002 GREEN
3 1002 RED
4 1003 RED
给定一个产品 ID,我只想检索一条记录 - 如果存在绿色,则为绿色,否则为红色。听起来我需要以某种方式使用 DISTINCT,但我不知道如何提供优先级规则。
我敢肯定,这很基础,但我的 SQL 技能不仅仅是生疏……
编辑:谢谢大家。请再问一个问题:如何使它适用于多条记录,即。如果 WHERE 子句返回不止一条记录?LIMIT 1 将限制整个集合,而我想要的是限制在每个产品中。
例如,如果我有类似 SELECT * FROM table WHERE productID LIKE "1%" ... 我如何检索每个唯一产品,但仍然尊重颜色优先级(绿色>红色)?