小编the*_*let的帖子

MYSQL - ROLLUP - 用SUBTOTAL和TOTAL替换NULL

我试图使用IFNULL来替换ROLLUP返回的NULL字段的小计和总计,但它似乎没有工作.

查询:

select IFNULL(usergroups.name, 'GROUP') AS DEALER,
IFNULL(users.name, 'TOTAL') AS SERVICE_ADVISOR,
COUNT(DISTINCT vcrs.uid) AS COMPLETED,
..........
..........
and vcrs.vcrSubStatus = 4
group by DEALER, SERVICE_ADVISOR with ROLLUP;
Run Code Online (Sandbox Code Playgroud)

输出:

DEALER          SERVICE_ADVISOR COMPLETED   IDENTIFIED  AUTHORISED
Aston Martin    Chris           3           664.56      0
Aston Martin    Graham          6           0           0
Aston Martin    (NULL)          15          664.56      0
Bentley         Sukraj          1           0           0
Bentley         Terry           4           0           0
Bentley         (NULL)          5           0           0
Jaguar          Emma            10          2448        1224
Jaguar          Paul            1           0           0
Jaguar          Simon           7           2754 …
Run Code Online (Sandbox Code Playgroud)

mysql rollup totals ifnull

7
推荐指数
3
解决办法
7117
查看次数

MySQL Left Outer Join没有为COUNT(*)返回NULL值

我试图离开外连接2表:TABLE1包含用户列表,TABLE2包含用户完成的表单列表.我想显示用户在给定日期之后创建的表单计数,其中status等于COMPLETED.

以下查询正在运行但不显示NULL值(我需要):

select TABLE1.USERNAME, count(TABLE2.FORMS)
from TABLE1
left outer join TABLE2 on (TABLE2.USERID = TABLE1.USERID)
and TABLE2.STATUS = COMPLETED
where TABLE2.DATE > 20140801
group by TABLE1.USERNAME;
Run Code Online (Sandbox Code Playgroud)

我需要做什么来包含NULL计数的用户,即TABLE2中没有表单?

谢谢

mysql sql null join

5
推荐指数
1
解决办法
7335
查看次数

标签 统计

mysql ×2

ifnull ×1

join ×1

null ×1

rollup ×1

sql ×1

totals ×1