SELECT NAME,AGE,SALES FROM USER WHERE DATE_TIME=TO_DATE('2011-11-21','yyyy-MM-dd') AND NAME='hello';这个SQL语句查询在2011-11-21这天的hello用户的数据 但是在这天没有该用户的信息
查询后没有NULL或者0显示 
NAME   AGE   SALES
如何能让他显示成
NAME   AGE   SALES
hello   0     0    请问这样该如何做

解决方案 »

  1.   


    seelct a.name ,nvl(b.age,0) as age,nvl(b.sales,0) as sales
    from 
    (select 'hello' as name from dual) a left join USER b on a.name=b.name
    where b.DATE_TIME=TO_DATE('2011-11-21','yyyy-MM-dd')
    要是有个 table_user 表的话 seelct a.name ,nvl(b.age,0) as age,nvl(b.sales,0) as sales
    from 
    (select name from table_user where name='hello') a left join USER b on a.name=b.name
    where b.DATE_TIME=TO_DATE('2011-11-21','yyyy-MM-dd')
      

  2.   

    seelct a.name ,nvl(b.age,0)  age,nvl(b.sales,0)  sales
    from 
    (select name from table_user where name='hello') a left join USER b on a.name=b.name
    where b.DATE_TIME=TO_DATE('2011-11-21','yyyy-MM-dd')
      

  3.   

    参考代码:SELECT NAME, NVL(AGE, 0), NVL(SALES, 0)
    FROM USER 
    WHERE DATE_TIME=TO_DATE('2011-11-21','yyyy-MM-dd') AND NAME='hello';
    NVL(参数1,参数2):如果参数1不为NULL,则返回参数1,否则返回参数2