【发布时间】:2020-10-30 15:36:46
【问题描述】:
我是 Sql Server 的初学者。我面临一个问题。我确实有一些基于外键[下面的图片链接]相互关联的表。现在我想显示每个产品的产品名称、产品类别名称和总销售订单。但是当用户点击按钮或链接时,用户将看到前 10 个最畅销的产品,然后在下一次点击时用户将看到接下来的 10 个产品。
这是代码,我试过了。我很困惑要代替 ?? 的列。
select p.product_name, c.category_name, ??
from production.products as p
inner join production.categories as c on p.category_id = c.category_id
order by ?? desc;
【问题讨论】:
-
“但是当用户点击按钮或链接时,用户将看到前 10 个最畅销的产品,然后在下一次点击时,用户将看到接下来的 10 个产品。” 那是应用程序逻辑,不是 SQL。 RDBMS 应该将整个数据集返回给应用程序,然后它应该根据“页面”显示该数据集中的适当行。
-
查看聚合函数和表连接。
-
另外,您在上述 SQL 中将
JOIN到production.categories两次,并且两次都给它相同的别名 (c)。别名在其定义的范围内必须是唯一的。
标签: sql sql-server join