Java Mysql-结果数据在DB中可用或不可用

Java Mysql-结果数据在DB中可用或不可用,java,mysql,Java,Mysql,这是我的sql查询,用于以DB为单位对错误计数求和。造成以下问题的原因是,当我检查此表中的可用数据时,它会检索给定的实际和正确数据,如果我在表输入中给出了任何错误的不可用数据,则它不会给出任何结果,也不会抛出任何输出屏幕: SELECT SUM(IF(ieb.errortype_id='1',1,0)) AS Total_Critical, SUM(IF(ieb.errortype_id='2',1,0)) AS Total_Non_critical, u.emp_id, u.

这是我的sql查询,用于以DB为单位对错误计数求和。造成以下问题的原因是,当我检查此表中的可用数据时,它会检索给定的实际和正确数据,如果我在表输入中给出了任何错误的不可用数据,则它不会给出任何结果,也不会抛出任何输出屏幕:

SELECT 
  SUM(IF(ieb.errortype_id='1',1,0)) AS Total_Critical,
  SUM(IF(ieb.errortype_id='2',1,0)) AS Total_Non_critical,
  u.emp_id,
  u.emp_name 
FROM 
  issueerror_empmap iem,
  issueerror_body ieb, 
  USER u, 
  issueerror_type iet 
WHERE 
  ieb.chapter_id = '424262' AND 
  iem.chapter_errorid=ieb.chapter_errorid AND 
  iem.emp_id = u.emp_id AND 
  u.emp_id = '693' AND 
  ieb.errortype_id=iet.errortype_id 
GROUP BY 
  iem.emp_id,
  u.emp_name 
ORDER BY 
  iem.emp_id
任何人都可以建议我如何构建此查询以检索数据(如果可用),如果输入数据在表中不可用,则将输出显示为null

如果表中的数据可用,则生成上述查询的输出:

总计\u关键总计\u非关键emp\u id emp\u名称 4 10 xxx xxx xxx 如果表中没有可用数据,则生成上述查询的输出:

总计\u关键总计\u非关键emp\u id emp\u名称 我希望emp_id和emp_名称的错误计数为null或零。

此查询如何

select
sum (Total_Critical) as Total_Critical,
sum(Total_Non_critical) as Total_Non_critical,
emp_id,
emp_name from 
(
(SELECT 
  SUM(IF(ieb.errortype_id='1',1,0)) AS Total_Critical,
  SUM(IF(ieb.errortype_id='2',1,0)) AS Total_Non_critical,
  u.emp_id,
  u.emp_name 
FROM 
  issueerror_empmap iem,
  issueerror_body ieb, 
  USER u, 
  issueerror_type iet 
WHERE 
  ieb.chapter_id = '424262' AND 
  iem.chapter_errorid=ieb.chapter_errorid AND 
  iem.emp_id = u.emp_id AND 
  u.emp_id = '693' AND 
  ieb.errortype_id=iet.errortype_id 
GROUP BY 
  iem.emp_id,
  u.emp_name 
ORDER BY 
  iem.emp_id ) 
) UNION ALL (
 select 0,0,null, null
)
) as tbl1

将来,您能否尝试格式化查询以提高可读性?这次我是为你做的。