我正在嘗試使用OleDbConnection
從Access數據庫檢索一些信息。我正在試圖通過一列包含一組字符串格式的數字來排序結果。用Access數據庫中的字母后綴排序數字
我希望自然順序的結果(例如1,2,10,20與1,10,2,20),所以我將感興趣的列中的數據轉換爲整數並對結果進行排序。
"SELECT Drawing, Sheet FROM TableName ORDER BY CINT(Sheet) ASC"
這工作得很好,但在某些情況下,當將表數據具有帶有字母后綴(例如圖1A,2B,等...)的值。上述命令顯然不適用於這些案例。
我想排序,像這樣的結果:1,2,2A,2B,3,3A,等等...
那麼,如何去了解呢?我見過一些使用REGEXP
和一些條件語句的示例,但顯然MS SQL不支持REGEXP
。所以我卡住了。想法將不勝感激。
完美的作品!我注意到有必要對Val(Sheet)和Sheet進行排序,否則只有前面的數字按照自然順序排列。 – SharpBarb
好吧,聽起來像你注意到之前我想將它包含在答案中。那是一個搖頭丸。 :-) – HansUp