У меня есть данные XML в столбце таблицы сервера SQL. Данные XML выглядят так:
<MainTag dateCreated="2/6/2020 9:22:48 AM">
</MainTag>
Я пишу запрос для извлечения данных из XML с последним dateCreated. Я пробовал использовать предложение order by, но поскольку дата хранится в виде строки, получается неправильный XML.
Запрос, который я пробовал:
SELECT TOP 1 tbl.Id,
c.value(''@dateCreated'',''VARCHAR(max)'') AS [dateCreated]
FROM tbl
CROSS APPLY tbl.Column.nodes(''/MainTag[1]'') AS t(c)
order by c.value(''@dateCreated'', ''VARCHAR(max)'') DESC;
Если два XML-файла похожи на:
<MainTag dateCreated="2/6/2020 9:22:48 AM"> and <MainTag dateCreated="5/3/2016 8:12:37 AM">
Тогда выбирается Xml, это
<MainTag dateCreated="5/3/2016 8:12:37 AM">
, но я хочу, чтобы было извлечено
<MainTag dateCreated="2/6/2020 9:22:48 AM">
.
Не знаю, как это сделать это.