有一表结构如下:
table1 
gsdm    gsmc         
1100    汉口分公司    
1200  武昌分公司     
1300  汉阳分公司select gsdm,gsmc from table1 where gsdm='1400' 查询没有结果,而我希望看到的结果是gsdm    gsmc
1400        
请问如何实现?

解决方案 »

  1.   

    select a.gsdm,b.gsmc
    from (
    select '1400'  gsdm from dual) a,
    (select gsdm,gsmc from table1 where gsdm='1400') b
    where a.gsdm=b.gsdm(+)
      

  2.   

    SELECT GSDM,
           GSMC
      FROM TABLE1
    UNION
    SELECT '1400' GSDM,
           NULL GSMC
      FROM TABLE2;
      

  3.   

    select 1400 as gsdm,null as gsmc from dual;
      

  4.   

    with x as (
       select '1400' gsdm 
         from dual
    )
    select a.gsdm,b.gsmc
      from x a, table1 b
    where a.gsdm=b.gsdm(+)
      

  5.   

    可以写个trigger,select的结果为空时,添加一个这样的记录gsmc为空(或是其他提示)。
      

  6.   

    oracle什么时候有select的触发器了啊
      

  7.   

    var_gsdm:=1400execute immediate 'select '||var_gsdm||', gsmc from table1 where gsdm='||var_gsdm;