加上where rnumb != 7
union
select ...... where rnumb = 7
看不懂问题?
@凡图: 仔细看了下就是关联字段的负数放在正数的后面紧邻 这句话有点不懂,开始还以为是:1 2 3 4 5 6 8 7这个顺序呢
@刘宏玺: 现在看懂了
@刘宏玺: 这个怕是要写C#代码来实现了,sql实现的代价太高了
@刘宏玺: 我上传了排序好的图片
select rnumb,aubel,aupos,aubel_r,aupos_r,pt_pcurr from( select *,case when rtrim(AUBEL_R)='' then AUBEL else AUBEL_R end as id1,case when rtrim(AUPOS_R)='' then AUBEL else AUPOS_R end as id2 from tablename) as a order by id1,id2,rnumb
可以試一下這句sql.
这是按你说的写出来的结果。这个我认为靠SQL是解决不了。我用C#自己完成了。拆成了2个table一个table存只有AUBEL,AUPOS的数据,另一个table存只有AUBEL_R,AUPOS_R的数据,然后根据条件和寻找特定的索引去重新插入一个新datatable
我用C#自己完成了。拆成了2个table一个table存只有AUBEL,AUPOS的数据,另一个table存只有AUBEL_R,AUPOS_R的数据,然后根据条件和寻找特定的索引去重新插入一个新datatable