select t1.zhuanghao, t1.fanghao, t1.fhmj, t1.fhzh
  from jsj_zsb_fyk t1
 where t1.fanghao is not null
union
select t1.zhuanghao, t1.qiku, t1.qkmj, t1.qkzh
  from jsj_zsb_fyk t1
 where t1.qiku is not null
union all
select t1.zhuanghao, t1.ziku, t1.zkmj, t1.zkzh
  from jsj_zsb_fyk t1
 where t1.ziku is not null

解决方案 »

  1.   

    SELECT COALESCE(FANGHAO, QIKU, ZIKU),
           COALESCE(FHMJ, QKMJ, ZKMJ),
           COALESCE(FHZH, QKZH, ZKZH)
      FROM JSJ_ZSB_FYK T
    COALESCE用这个函数很完美。取第一个不为空的值。。
    你可以根据自己需要进行罗列。。
      

  2.   

    建议楼主看看case when 语句,适合于行列转换。