Как использовать значение ячейки Excel в SQL-запросе подключения к данным Office с оператором IN?

543
cori

У меня есть Office Data Connection, выполняющий SQL-запрос к внешнему источнику данных и использующий некоторые динамические параметры, представленные в ячейке на листе. Пока я делаю что-то вроде

SELECT * FROM TABLE1 WHERE FIELD1 = ?

и установка источника параметра соответствующим образом все работает нормально. Однако, если я попробую что-то вроде

SELECT * FROM TABLE1 WHERE FIELD1 IN (?)

Любая попытка предоставить значение, подобное 1,3,5,7запросу, похоже, обращает внимание только на первое значение в списке, а не на весь источник (поэтому при использовании 1,3,5я получаю строки с 1 в соответствующем поле, а с помощью 3,5,7я получаю строки с 3 в соответствующее поле).

Есть ли способ предоставить мне список значений для использования в качестве значения параметра в операторе IN в запросе SQL, который я полностью пропускаю?

РЕДАКТИРОВАТЬ

Я помещаю список значений параметров в одно поле Excel. В Excel также автоматически добавляется значение поля ', как и в случае экранирования значений, которые необходимо воспринимать как текст. Кажется, никакая комбинация форматирования ячеек не избавляет от 'символа.

Предоставление (1,3,5)в теле запроса вместо того, чтобы (?)работать как ожидалось; только когда вы пытаетесь использовать ячейку Excel в качестве динамического параметра, вещи не работают.

1
Работает ли `SELECT * FROM TABLE1 WHERE FIELD1 IN (1,3,57) 'должным образом? У вас есть `1,3,5,7` в той же самой ячейке, или каждый номер в своей собственной ячейке? Máté Juhász 7 лет назад 0
вопрос обновлен, спасибо! cori 7 лет назад 0

0 ответов на вопрос

Похожие вопросы