Я пытаюсь получить некоторые данные в форме XML из базы данных, и у меня есть некоторый успех, но я, кажется, не могу отфильтровать их.
Я должен привести, потому что данные хранятся как nvarchar
select
cast (questions.[Text] as xml)
.query('/table/tbody/tr/td[@data-bm="cip_3_timeframe"]') as timeframe
from
ODQuestions
where
QuestionType = 5
Я получаю информацию обратно.Несколько пустых строк и несколько строк с XML, который я хочу!Поэтому я попытался добавить простой
select
cast(questions.[Text] as xml)
.query('/table/tbody/tr/td[@data-bm="cip_3_timeframe"]') as timeframe
from
ODQuestions
where
QuestionType = 5 and timeframe <> ''
, и кажется, что период не является столбцом.
Я также пытался
select
cast (questions.[Text] as xml) as timeframe,
timeframe.query('/table/tbody/tr/td[@data-bm="cip_3_timeframe"]')
from
ODQuestions
where
QuestionType = 5
and timeframe.exists('/table/tbody/tr/td[@data-bm="cip_3_timeframe"]')
Аналогичным образом приводил к
Msg 4121, уровень 16, состояние 1, строка 1
Не удается найти ни один столбец "таймфрейм"или пользовательская функция или агрегат" timeframe.query ", или имя неоднозначно.
Любые подсказки о том, как отфильтровать эти данные, будут очень благодарны!