gpt4 book ai didi

sql - 使用 JOIN 和 SQL 列出和计数项目

转载 作者:行者123 更新时间:2023-12-04 09:10:05 24 4
gpt4 key购买 nike

我正在尝试从这两个表中创建一个基本的融洽关系:
餐 table 产品

|--------|----------------|----------|
| PRO_Id | PRO_CategoryId | PRO_Name |
|--------|----------------|----------|
| 1 | 98 | Banana |
| 2 | 98 | Apple |
|--------|----------------|----------|
表格分类
|--------|----------|
| CAT_Id | CAT_Name |
|--------|----------|
| 98 | Fruits |
| 99 | Other |
|--------|----------|
我需要的是这个输出:
|------------|
| Categories |
|------------|
| Fruits (2) |
|------------|
我想要一份列出来自 Categories 的所有类别的报告但仅当产品来自 Products有一个链接(水果是这种情况,但不是其他)。
这就是我实际所在的位置:
SELECT CAT_Name, COUNT(PRO_Name IN sum)
FROM Categories
JOIN Products
ON Products.PRO_CategoryId = Categories.CAT_Id as sum
ORDER BY CAT_Name ASC
任何人都可以帮助我吗?
谢谢。

最佳答案

你很接近。您需要清除查询中的垃圾并使用 group by :

SELECT c.cat_name, COUNT(*)
FROM Categories c JOIN
Products p
ON p.PRO_CategoryId = c.CAT_Id
GROUP BY c.CAT_Name ;
笔记:
  • SELECT *不适用于聚合查询。你要选择的是。
  • 这将计数放在一个单独的列中,这似乎是您的意图,尽管样本结果。
  • COUNT(pro_name in sum)没有意义。
  • as sum没有意义。
  • 关于sql - 使用 JOIN 和 SQL 列出和计数项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63368109/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com