例如 我有一个查询结果为
上海 1
广州 2但是我想让他显示为
上海 1
南京 
北京
广州 2就是一直按照第二种格式显示 不管他有没有数据
请问sql能实现吗?
请指教。

解决方案 »

  1.   

    你至少应该有一个关于城市的基础数据表,基础数据表中放有所有要显示的城市数据
    ,如:city(id,cityname),然后在SQL采用左连接就行了。select * from city c,t where c.id=t.id(+)如果没有,则只能自己构造
    select * from t
    union all
    select '南京',0 from dual
    union all
    select '北京',0 from dual;
      

  2.   


    with t as(
         select '南京' city from dual union all
         select '北京' from dual)
    select city,id from tb_name
    union all
    select city,null from t
      

  3.   

    谢谢
    已经搞定了 我自己先构造了一个地区表 然后都左连接这个表
    select '南京' city from dual
    union all
    select '北京' city from dual
    union all
    select '上海' city from dual
    union all
    select '广州' city from dual