通过查询中的数据对调度程序订购数据

时间:2013-12-16 17:21:02

标签: asp.net sql-server datetime sql-order-by radscheduler

Col1 Col2 Col3

98 BT XYZ迈克尔| 2013-12-24 10:00:00.0000000 | 2013-12-24 11:00:00.0000000

99 BT PPRL James1212 | 2013-12-24 09:46:04.0000000 | 2013-12-24 10:46:04.0000000

100 LV RD JOHN | 2013-12-24 12:52:22.0000000 | 2013-12-24 13:52:22.0000000

101 LV RD JOHN | 2013-12-24 12:58:05.0000000 | 2013-12-24 13:58:05.0000000

102 LV RD JOHN | 2013-12-24 13:13:56.0000000 | 2013-12-24 14:13:56.0000000

所以,我的查询返回6列。我在这里展示其中的3个。 Col1的数据类型为varchar(max),col2,col3的类型为datetime2。现在我在radscheduler上显示这些数据。它的任命显示为101,100,102,99,98。我想按字母顺序显示它们。我的意思是98,99,100,101,102。大多数时候数据开始像这样一个数字和一些像这样的数据(43 blah blah)。很快就会以“** blah blah”开头。我怎样才能做到这一点?有任何想法吗?如果您需要更多信息,请询问。感谢。

1 个答案:

答案 0 :(得分:0)

好的解释为什么它不起作用。

Declare @i varchar(100)='98 BT XYZ Michael'

select substring(@i,PATINDEX('%[0-9]%', @i),PATINDEX('%[A-Z]%', @i)-1)