如何将null传递给mysql中的json对象中的键?

问题描述

SELECT JSON_OBJECT('countData',JSON_ARRAYAGG(JSON_OBJECT( 'task',nData.task,'count',nData.count))) as data  
            FROM ( SELECT  
                    t.task as task,COUNT(d.nearmissId) as count
                  FROM nearmiss nm  
                    INNER JOIN description d  
                    on nm.id=d.nearmissId  
                    INNER JOIN overview ov  
                    on nm.id=ov.nearmissId  
                    INNER JOIN port p  
                    on p.id=ov.portId      
                    INNER JOIN vessel v  
                    on v.id=ov.vesselId          
                    INNER JOIN vesseltype vt  
                    on vt.id=v.vesselTypeId
                    INNER JOIN vesselowner vo  
                    on vo.id=v.vesselOwnerId      
                   INNER JOIN fleet f  
                   on f.id=v.fleetId      
                    INNER JOIN additionalgroupvessels ag  
                    on v.id=ag.vesselId      
                    INNER JOIN task t  
                    on t.id=d.taskId  
                  WHERE nm.isDeleted=0 and t.isDeleted=0   and YEAR(nm.createdAt) = '2020'   
                GROUP BY  t.task ) nData

这是我的查询,当我在数据库中拥有数据的2020年过去时,此查询工作正常,但是当我没有数据的一年过去时,它显示为null:空值,而不是我期望的值

"countData": [
      {
        "task": null,"count": 0
      }
    ]

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)