Ошибка при использовании перекрестного применения
Я пытаюсь использовать cross apply в первый раз и каждый раз получаю ошибку.
Если я жестко закодировал значения, это работает нормально, если я попытаюсь использовать табличные значения (в чем и заключается весь смысл), я получу ошибку.
Что я уже пробовал:
-- Я вызываю TVF, когда жестко кодирую значения, это прекрасно работает
с
elect prs.* from cifa addr cross apply TVFParseSourceAddress('123 First Street',null,null,'Lake Mary FL 27344',null,null,null,null) prs
но когда я пытаюсь вызвать функцию, используя значения из таблицы cifa, она выдает мне ошибку. Неправильный синтаксис рядом с '.'
select addr.ADDRESS1, addr.ADDRESS2, addr.CITY_STATE_ZIP from cifa addr cross apply TVFParseSourceAddress(addr.ADDRESS1,null,null,addr.CITY_STATE_ZIP,null,null,null,null) prs
Я предполагаю, что, поскольку он работает с жестко закодированными значениями, проблема не в TVF, но я в тупике относительно того, в чем может быть проблема
Bryian Tan
Хм, это странно. Во всяком случае, мое предложение на данный момент состоит в том, чтобы использовать одно значение из таблицы cifa за раз, а остальное жестко закодировать, чтобы сузить, какой параметр дает проблему.
CHill60
Есть ли у вас примеры данных для таблицы cifa? Возможно, стоит поделиться и кодом TVF