2

datagridviewで降順を表示する方法。順序は、最後の文字から開始する必要があります。

これはdatagridvie「VehicleNo」の私のコラムです

元:

1)ap20aa4779

2)ap09ss9999

3)se06ps1136

4)su02rd5544

最後のDESCENDING order文字の後に開始する必要があります。

私はdbから次の値を持っています:-

1)ap09ss9999

2)su02rd5544

3)ap20aa4779

4)se06ps1136

The database is MSACCESS 2007.

私の友人の一人がこの質問を提案します:-

select VehicleNo from ScooterInOut order by reverse(vehicleNo) desc where TokenStatus=0

うまく機能していますが、機能してSQL SERVERいませんMsAccess

uplzアドバイスできますか...

前もって感謝します

4

3 に答える 3

2

式でAccessdbエンジンのRight()関数を使用しますORDER BY

SELECT VehicleNo
FROM ScooterInOut
WHERE TokenStatus=0
ORDER BY Right(vehicleNo, 4) DESC;
于 2012-06-15T14:56:57.363 に答える
0
 Select VehicleNo
 From tblVehicles
 Order By Convert(int,SUBSTRING(VehicleNo,Len(VehicleNo)-3,4)) Desc
于 2012-06-15T07:21:14.207 に答える
0

データをフェッチした後、クライアント、つまりDatagridviewで並べ替えを行わないのはなぜですか。そうすれば、SQL SERVER / MSACCESS/Oracleのような依存関係はなくなります。データをクエリし、DatagridViewにバインドしてから、グリッドビューに並べ替えを適用します。

だから、あなたはこのようにあなたのクエリを残すかもしれません-

select VehicleNo from ScooterInOut where TokenStatus=0これはかなり標準的なクエリです。次に、データをバインドした後、Datagridviewに並べ替えを適用します。

msdnを読んでください。これを実現する方法に関するすべての情報があります-http: //msdn.microsoft.com/en-us/library/ms171607.aspx

パフォーマンスの懸念-バッチでクエリを実行したり、ページングなどを適用したりすることを考えたと思います。大規模なデータセットの場合は、datagridviewなどを仮想化することを考えたかもしれません。

于 2012-06-15T09:24:02.763 に答える