У меня очень простой запрос, который вызывает UDF, который разбивает поле запятой. ЗапросНеправильный синтаксис около '.' - очень простой запрос
select top 10 * FROM Emails e WHERE EXISTS(SELECT TOP 1 1 FROM dbo.fn_Split(e.committees,','))
Когда я бегу/разобрать его, я получаю:
Msg 170, Level 15, State 1, Line 4
Line 4: Incorrect syntax near '.'.
Я думаю, что это должно быть что-то делать с SQL 2000. Если вы переключитесь из e.committees для чего-то HARDCODED (т.е. «A, B, C, D»), он отлично работает.
Кроме того, я понимаю, что он всегда будет возвращать все 10 строк (пока данные электронной почты имеют данные). – Jonathan
вы уверены в этой части: 'TOP 1 1 FROM'? – Andrey
запрос ужасен, использование функции, которая разделяет строку, здесь является большой накладной. вы можете получить первое поле строки проще. плюс это против правил нормализации для хранения списка внутри отдельных ячеек. у вас гораздо более серьезные проблемы, чем синтаксические ошибки. – Andrey