0

私は6つの行を持っています

col1     col2
--------------
Apple    120
XApple   140 
Banana   130
Xbanana  150
Car      110
XCar     160

これらの行を col2 で並べ替えたいのですが、行を「X」のままにしておきます。

したがって、並べ替えた後、行は次のようになります

col1     col2
--------------
Car      110
Apple    120
Banana   130
XCar     160
XApple   140
Xbanana  150

つまり、car apple とbanana を含む行はソートする必要がありますが、xcar、xapple、および xbanana を含む行はそのままにして、最後に追加する必要があります。私は試した

select * 
from table
where col1 not like 'X%' order by col2
union
select * 
from table
where symbol like 'X%'

しかし、SQLサーバーはそれを許可していません。誰かが私を正しい方向に向けたり、これは不可能だと教えてくれませんか?

PS: どの LINQ ソリューションでも問題ありません。

ありがとう

4

3 に答える 3

0

取得できるx行数の上限がわかっている場合は、次のようなことができます....

select * from (select top 5000 col1 from #tmp order by col1) a
union
select col1 from #tmp
于 2013-05-31T14:56:20.337 に答える