一个类型的SQL count()超过2个表

时间:2013-04-04 09:38:20

标签: sql count sql-order-by

我有一个问题如何制作正确的sql语句,因为我不知道如何开始; - (

有以下两个表格:

表1:测试

id|name|type
-------------
1|FirstUnit|1
2|FirstWeb|2
3|SecondUnit|1

表2:类型

id|type
--------
1|UnitTest
2|WebTest

我想得到以下结果:

表结果:

type|amount
-----------
UnitTest|2
WebTest|1

任何人都可以帮忙提示如何开始吗?

提前致谢。 LStrike

3 个答案:

答案 0 :(得分:2)

SELECT  a.type, COUNT(b.type) amount
FROM    types a
        LEFT JOIN test b
            ON a.ID = b.type
GROUP   BY a.type
ORDER   BY amount DESC

要进一步了解联接,请访问以下链接:

答案 1 :(得分:1)

您可以尝试此查询:

SELECT
    t.type ,
    COUNT(*) AS amount
FROM types AS t
   JOIN test AS te ON t.id= te.type
GROUP BY type
ORDER BY t.type

答案 2 :(得分:0)

以下是解决方案: -

 SELECT  types.type, COUNT(test.type) as amount from types,test where test.type=types.id 
 GROUP BY test.type
 ORDER BY amount
相关问题