Подстрока значения столбца типа данных XML в SQL Server 2005

У меня есть таблица в базе данных на SQL Server 2005. Один из столбцов имеет тип данных XML. Содержание столбцов похоже на

   <info>This is a sample information .Anyone can help </info>

Теперь я хочу запросить данные в таблице с частью значения столбца в качестве ответа. то есть: мой желаемый результат: «Это образец»

Каким должен быть запрос? Подстрока выдает ошибку


person Shyju    schedule 06.08.2009    source источник


Ответы (1)


Есть два способа сделать это:

1) получить весь текст из XML, а затем позволить SQL получить подстроку из этого:

SELECT SUBSTRING(tablename.columnname.value('(/info)[1]', 'varchar(max)'), 1, 17)

2) позволить XQuery вместо этого получить подстроку непосредственно из текста XML:

SELECT tablename.columnname.value('substring(string((/info)[1]), 1, 17)')
person Remy Lebeau    schedule 14.08.2009