Я использую SQL Server 2008 R2. Моя проблема в том, что я хочу подсчитать количество обращений, которые я получаю от запроса XQuery, используя FLWOR. Для каждого удара, я хочу, порядковый номер, например: 0,1,2,3,4 ...FLWOR in Sql server количество результатов
Мой запрос:
select @xml.query('for $s at $count in /Root/Persons/Person
return <Person ID="{$count}">{$s}</Person>')
Единственная проблема здесь это не поддерживается в SQL Server и я получаю сообщение об ошибке:
Msg 9335, Level 16, State 1, Line 16
XQuery [query()]: The XQuery syntax 'at' is not supported.
Я также попытался с ключевым словом, пусть и определить новую переменную, но я не знаю, как увеличить значение этой переменной на каждой итерации?
Спасибо за ответы на все вопросы, Frenky
Большое спасибо за ответ. В Sql-сервере 2008R2 предыдущий-сиблинг также не поддерживается, полученная ошибка: Msg 9335, уровень 16, состояние 1, строка 16 XQuery [query()]: Синтаксис XQuery «previous-sibling» не поддерживается , – FrenkyB
Ничего себе, не ожидал, что Microsoft сильно искалечила XQuery. Я расширил свой ответ еще одним уродливым обходным решением, которое должно быть поддержано. –
Это работает)) Синтаксис такой же уродливый, какой он может быть и далек от интуитивного, но он работает)) Еще раз спасибо. – FrenkyB