SQL 语句查询问题:统计表中的一条记录对应另一个表中多少条记录

时间:2022-07-24 21:55:39
数据库中有两个表:km_tbl_app(AppID, AppName); km_tbl_appdesc(AppDescID, AppID) ,通过AppID关联的.
我要查询km_tbl_app中的一条数据,在km_tbl_appdesc中对应了几条数据,我写的查询语句如下,这样想问有没
有其他好的方法.
SELECT app1.AppID, app1.AppName,
       (SELECT Count(AppDescID)
          FROM km_tbl_appdesc Desc1
         WHERE Desc1.AppID = app1.AppID)
          AS AppDescCount
  FROM km_tbl_app app1

5 个解决方案

#1


select
  a.aaid,
  a.appname,
  b.AppDescCount
from
  km_tbl_appdesc a,
  (select AppID,count(AppDescID) as AppDescCount from km_tbl_appdesc Desc1 group by AppID)b
where
   a.AppID = b.AppID

#2


 【fredrickhu】你这个,跟我那个,查询速度上,那个比较好啊?

#3


引用 2 楼 xiongmao000738 的回复:
【fredrickhu】你这个,跟我那个,查询速度上,那个比较好啊?


如果在AppID上加索引的话 或许我的快点 

没去测试 你自己去试试

#4


自己测试下就知道了。应该相差不了多少的!

#5


多谢,我写的那种速度不稳定, 而且比你写的那种慢。

#1


select
  a.aaid,
  a.appname,
  b.AppDescCount
from
  km_tbl_appdesc a,
  (select AppID,count(AppDescID) as AppDescCount from km_tbl_appdesc Desc1 group by AppID)b
where
   a.AppID = b.AppID

#2


 【fredrickhu】你这个,跟我那个,查询速度上,那个比较好啊?

#3


引用 2 楼 xiongmao000738 的回复:
【fredrickhu】你这个,跟我那个,查询速度上,那个比较好啊?


如果在AppID上加索引的话 或许我的快点 

没去测试 你自己去试试

#4


自己测试下就知道了。应该相差不了多少的!

#5


多谢,我写的那种速度不稳定, 而且比你写的那种慢。