SQL, где пункт одинарные кавычки

Я пытаюсь получить одинарные кавычки вокруг большого количества текста. пример

SELECT
DiagnosisID
FROM DiagnosisTable
WHERE DiagnosisID IN (
E01.8, E02, E03.2, E03.3, E03.8, E03.9, E89.0, 
I21.01, I21.02, I21.09, I21.11, I21.19, I21.21, I21.29, I21.3, I21.4,     
I22.0, I22.1, I22.2, I22.8, I22.9 
G30.0, G30.1, G30.8, G30.9 

Theres около 2300 различных идентификаторов. Есть ли другой способ разместить '' вокруг удостоверения личности? Есть ли другая функция для использования?

Спасибо

3 ответа

Скопируйте ваш quety в любой текстовый редактор (да, даже блокнот), который имеет функцию поиска и замены. замещать , с ', ' и добавить фират и последний ' вручную.

Если вы уже начали добавлять их вручную, сначала замените ' с пустой строкой.

Вот что я сделаю. Это не изящно и не элегантно, но подходит для моих целей.

Создайте таблицу для хранения идентификаторов.

create table MyID (ID  varchar(10))

Создайте электронную таблицу и добавьте список в столбец B. В столбце A введите следующее:

Insert into MyID values ('

В столбце C введите:

)'

Скопируйте все столбцы до конца списка. В столбце D объедините их A+B+C+D, чтобы получить строку. Вставьте строку в окно SQL и вставьте строки. Затем используйте его в запросе:

`Select D.* 
FROM DiagnosisTable D 
join MyID M on D.DiagnosisID = M.ID`

Предполагая, что ваши данные в столбце A, добавьте формулу в столбец B

= "'" & A1 & "'"

и скопируйте формулу вниз. скопируйте столбец B, а затем вставьте значение в предложение where запроса SQL.

Другие вопросы по тегам