Mysql 无法找到回答此查询的代码。

Mysql 无法找到回答此查询的代码。,mysql,sql,sql-server,database,join,Mysql,Sql,Sql Server,Database,Join,SQL>从显示的菜单中选择* ID NAME SQL>从Art_对象中选择* ID YEAR TITLE DES A_NAME SQL> 他们问我的问题是显示每个艺术家现在展出的艺术品数量。显示意味着它们在表中显示。答案是: select count(ID), A_NAME from Art_Object where ID in (select I

SQL>从显示的菜单中选择*

    ID NAME
SQL>从Art_对象中选择*

    ID YEAR                      TITLE                     DES                       A_NAME
SQL>

他们问我的问题是显示每个艺术家现在展出的艺术品数量。显示意味着它们在表中显示。

答案是:

select count(ID), A_NAME 
from Art_Object 
where ID in (select ID from displayed_on) group by (A_NAME);
答案是:

select count(ID), A_NAME 
from Art_Object 
where ID in (select ID from displayed_on) group by (A_NAME);
只需使用group by和count连接两个表:

SELECT
  o1.A_Name,
  COUNT(COALESCE(o2.ID, 0)) AS TotalNOfObjects
FROM Art_Object as o1
LEFT JOIN displayed_on AS o2 ON o1.ID = o2.ID
GROUP BY o1.A_Name;
:

只需使用group by和count连接两个表:

SELECT
  o1.A_Name,
  COUNT(COALESCE(o2.ID, 0)) AS TotalNOfObjects
FROM Art_Object as o1
LEFT JOIN displayed_on AS o2 ON o1.ID = o2.ID
GROUP BY o1.A_Name;
:


按名称从Art_对象组中选择countID;我相信您将能够自己解决如何在查询中选择多个字段的问题。提示:谷歌从Art_对象组中选择countID,按名称;我相信您将能够自己解决如何在查询中选择多个字段的问题。提示:google子查询根本不需要。问题清楚地说,显示意味着它们在表中显示。@Omar.K现在试试你的,并添加了艺术家名称:选择一个艺术家名称,从艺术对象中选择countid,其中id在“按名称从显示组中选择id”中;谢谢@Arvindsinc2和Baaoth。子查询根本不需要。问题清楚地说,显示意味着它们在表中显示。@Omar.K现在试试你的,并添加了艺术家名称:选择一个名称,从艺术对象中选择countid,其中id在按名称从组中选择id;感谢@Arvindsinc2和Baaowhat,如果我需要显示每个类别有多少件艺术品,比如有多少艺术品在绘画+雕塑+其他,并在一张桌子上显示计数@如果我需要显示每个类别的艺术品数量,该怎么办,比如有多少艺术品在绘画+雕塑+其他,并在一张桌子上显示计数@赢抄送
|   A_Name | TotalNOfObjects |
|----------|-----------------|
| Leonardo |               1 |
|     Omar |               1 |
|   Picaso |               1 |
| van Gogh |               2 |