从两个不同的表MySQL中检索sum值并排序

时间:2017-03-22 23:05:03

标签: mysql

我的数据库中有两个表,dbl1_profiletype和dbl1_users。

在dbl1_profiletype中,我有“id”和“name”

的列
id__name
3___red
5___blue
6___white
7___green
8___brown

在dbl1_users中,我有“userid”和“profile”的列,其中“profile”值与dbl1_profiletype表中的“id”值相同。

dbl1_users

我想要展示的是一张如下图所示的表格:

TOTAL_MEMBERS

所以,我需要的是返回一个列表,其中包含profiletype的成员总数,由profiletype以更多成员排序,最后以成员数量较少的profiletype排序。 我试着像这样选择名称和COUNT(个人资料):

SELECT name, COUNT(profile)

FROM  dbl1_profiletype, dbl1_users 

GROUP BY profile

但它不起作用。

我也尝试过:

SELECT name, COUNT(profile)

FROM  dbl1_profiletypes, dbl1_users 

GROUP BY profile

没有成功。

我是mysql中的noob,但我怀疑它可能很简单,但目前还不能理解。

非常感谢任何帮助

1 个答案:

答案 0 :(得分:1)

这就是我提供的信息。我认为你错过了JOIN条件,

SELECT DBL1_PROFILETYPE.NAME MEMBERS
    , COUNT(*) TOTAL
FROM DBL1_USERS
    JOIN DBL1_PROFILETYPE 
        ON DBL1_USERS.PROFILETYPE = DBL1_PROFILETYPE.ID
GROUP BY DBL1_PROFILETYPE.NAME
相关问题