现在查出来的数据为null,该怎么把查出来的数据变为”0“
SELECT
b.*
FROM
(
SELECT
a.*
FROM
(
SELECT DISTINCT
( SELECT ISNULL( COUNT ( * ), 0 ) FROM XC_Job ) AS TypeCount,
( SELECT ISNULL( COUNT ( * ), 0 ) FROM XC_Job WHERE type = 1 ) AS OneCount,
( SELECT ISNULL( COUNT ( * ), 0 ) FROM XC_Job WHERE type = 2 ) AS TwoCount,
( SELECT ORG_CODE FROM T_SYS_USERINFO WHERE user_code = XC_Job.userid ) AS jobusername
FROM
XC_Job
) a
) b
WHERE
1 = 1
AND jobusername = 'yjjhcom_zhglb'
'
你可以使用 SQL 的 IFNULL 函数将 NULL 值替换为 0。
以下是你的查询的修改示例:
SELECT
b.*
FROM
(
SELECT
a.*
FROM
(
SELECT DISTINCT
IFNULL((SELECT COUNT(*) FROM XC_Job), 0) AS TypeCount,
IFNULL((SELECT COUNT(*) FROM XC_Job WHERE type = 1), 0) AS OneCount,
IFNULL((SELECT COUNT(*) FROM XC_Job WHERE type = 2), 0) AS TwoCount,
(SELECT ORG_CODE FROM T_SYS_USERINFO WHERE user_code = XC_Job.userid) AS jobusername
FROM
XC_Job
) a
) b
WHERE
1 = 1
AND jobusername = 'yjjhcom_zhglb'
使用 IFNULL 函数,如果子查询返回的值为 NULL,则将其替换为 0。
以下答案引用自GPT-3大模型,请合理使用:
'
将上述SQL语句中每组ISNULL函数改为如下代码:
// 将查询结果为null的值替换为0
SELECT
b.*
FROM
(
SELECT
a.*
FROM
(
SELECT
DISTINCT(
COALESCE(
(SELECT
COUNT(*)
FROM XC_Job), 0)
) AS TypeCount,
COALESCE(
(SELECT COUNT(*) FROM XC_Job WHERE type=1), 0
) AS OneCount,
COALESCE(
(SELECT COUNT(*) FROM XC_Job WHERE type = 2 ), 0
) AS TwoCount,
(SELECT ORG_CODE FROM T_SYS_USERINFO WHERE user_code=XC_Job.userid) AS jobusername
FROM XC_Job
) a
) b
WHERE 1=1 AND jobusername='yjjhcom_zhglb'
如果我的回答解决了您的问题,请采纳我的回答