传送门:可回收且低脂的产品
题目
表:Products
±------------±--------+
| Column Name | Type |
±------------±--------+
| product_id | int |
| low_fats | enum |
| recyclable | enum |
±------------±--------+
product_id 是该表的主键(具有唯一值的列)。
low_fats 是枚举类型,取值为以下两种 (‘Y’, ‘N’),其中 ‘Y’ 表示该产品是低脂产品,‘N’ 表示不是低脂产品。
recyclable 是枚举类型,取值为以下两种 (‘Y’, ‘N’),其中 ‘Y’ 表示该产品可回收,而 ‘N’ 表示不可回收。
编写解决方案找出既是低脂又是可回收的产品编号。
返回结果 无顺序要求 。
返回结果格式如下例所示:
示例 1:
输入:
Products 表:
±------------±---------±-----------+
| product_id | low_fats | recyclable |
±------------±---------±-----------+
| 0 | Y | N |
| 1 | Y | Y |
| 2 | N | Y |
| 3 | Y | Y |
| 4 | N | N |
±------------±---------±-----------+
输出:
±------------+
| product_id |
±------------+
| 1 |
| 3 |
±------------+
解释:
只有产品 id 为 1 和 3 的产品,既是低脂又是可回收的产品。
解析
既是低脂又是可回收的意思就是低脂和回收类型同时是Y,是且的关系,直接用WHERE筛选即可。
算法(标准SQL)
查询产品表,满足低脂和回收类型同时为Y,返回产品id。
代码(标准SQL)
select product_id
from Products
where recyclable='Y' and low_fats='Y';