select *  from ( select  rownum as rn,ss.* from (select s.ID,sitecode,SiteName,CreateTime,IPAddress, rr.regionname || r.regionname as city ,v.valleyname as valley from site s  left join region r on s.regioncode=r.regioncode left join valley v on s.valleycode=v.valleycode  left join region rr on rr.regioncode=substr(r.regioncode,1,4)||'00' where 1=1  and s.sitecode='14118-01300023' order by s.regioncode,s.sid) ss)  where rn between 1 and 15
这个语句改成sql的咋改啊

解决方案 »

  1.   

    除非列名一样。
    列名相同的情况下这样写:
    select top 15 s.ID,sitecode,SiteName,CreateTime,IPAddress, rr.regionname + r.regionname as city ,v.valleyname as valley from site s left join region r on s.regioncode=r.regioncode left join valley v on s.valleycode=v.valleycode left join region rr on rr.regioncode=substring(r.regioncode,1,4)+'00' 
    where s.sitecode='14118-01300023' 
    order by s.regioncode,s.sid