比如 id=1的这条数据在库里不存在,但是还是想在页面上显示id=1的这条空数据,使其它列为0
准备一张含有所有ID值的维度表,用实时表与维度表关联即可;
————————
那你生成一个完整序号数据集,然后
left join 一个你的这个表
最后 处理 其他字段为空转为0 nvl(字段,0)
SELECT A.ID,表.* FROM (
SELECT DISTINCT(ID) ID FROM (
SELECT ID FROM 表
UNION ALL
SELECT '1' [ID]
) B
) A
LEFT JOIN 表 ON A.ID=表.ID
其中的一个方法
如果每次只查一个 id的话,简单点可以这样写
oracle库
select t.id,nvl(t1.其他字段,0) as 其他字段
from (select 1 as id from dual)t
left join 表名 t1
on t.id=t1.id
mysql库
select t.id,ifnull(t1.其他字段,0) as 其他字段
from (select 1 as id)t
跟三楼的思路大致一样