这两个查询有什么区别?
(sale_id, year) 是此表的主键(具有唯一值的列的组合)。 product_id 是 Product 表的外键(引用列)。 此表的每一行都显示特定年份product_id的产品销售额。
查询 1:
SELECT
product_id,
MIN(year) first_year,
quantity,
price
FROM
sales
GROUP BY
product_id
查询 2:
select
product_id,
year as first_year,
quantity,
price
from
Sales
where
(product_id, year) in (
select
product_id,
min(year)
from
Sales
group by
product_id
)
我的解决方案是 Query#1(它不起作用),但是,Query#2 似乎有效,但我无法理解两者之间的区别