フィールドに「 Date: 03-21-13 12/13/14/15Date: 04-21-13 39/12/34/14Date: 04-19-13 19/45/65/12」というデータがあります。最近の日付に基づいてフィールド内でこのデータをソートする方法。
次のように見えるはずです
- 日にち:
04-21-13 39/12/34/14 - 日にち:
04-19-13 19/45/65/12 - 日にち:
03-21-13 12/13/14/15
フィールドに「 Date: 03-21-13 12/13/14/15Date: 04-21-13 39/12/34/14Date: 04-19-13 19/45/65/12」というデータがあります。最近の日付に基づいてフィールド内でこのデータをソートする方法。
次のように見えるはずです
04-21-13 39/12/34/1404-19-13 19/45/65/1203-21-13 12/13/14/15テキストとして保存しているため、列を直接正しくソートすることはできません(発見したようです)。列を分割してから並べ替える必要があります。何かのようなもの:
Declare @tvTable Table (
TextColumn varchar(max)
)
Insert @tvTable
Select '04-19-13 19/45/65/12'
Union All
Select '04-21-13 39/12/34/14'
Union All
Select '03-21-13 12/13/14/15'
Union All
Select '03-25-13 17/18/19/20'
Union All
Select '05-01-13 99/88/77/66'
Union All
Select '02-01-13 11/22/33/44'
Select t.TextColumn
From @tvTable t
Cross Apply dbo.fncDelimitedSplit8k(TextColumn, ' ') split
Where split.ItemNumber = 1
Order By Cast(split.Item As DateTime) Desc
Jeff Moden Tally OH!から取得した分割機能。