2013-12-16 21 views
0

Col1 Col2 Col3通过查询数据在调度程序上订购数据

98 BT XYZ Michael | 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等等)。有时它开始为“**等等等等”。我怎样才能做到这一点?有任何想法吗?如果您需要更多信息,请询问。谢谢。

+0

不关你的例子开始..A或**等等blah.So给几个example.Is那里,正在遵循。也清楚地显示出你想要的任何输出特定模式。 – KumarHarsh

+0

@KumarHarsh。当我的意思..我是说数据会是这样的。你在那里看到我的排,就像那样。号码等等。即“98测试测试”或类似于“98,99 TestABC测试”。我清楚了吗? – RookieAppler

回答

0

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

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

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