Как возвращать значения с использованием нескольких входов подстановочных

голоса
0

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

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

SELECT ZMATNR, ZLPN
FROM   tblZMMGPNXREF
where ZMATNR like '%89187605%'

Но когда я использую несколько значений, как показано ниже, я получаю эту ошибку

Msg 102, Level 15, State 1, Line 3 Неправильный синтаксис около ''.

SELECT ZMATNR, ZLPN
FROM   tblZMMGPNXREF
where ZMATNR like '%89187605%','%89363059%'

Заранее спасибо!

Задан 19/03/2020 в 22:03
источник пользователем
На других языках...                            


1 ответов

голоса
2

Ваша попытка синтаксиса явно не поддерживается. Вы можете использовать OR:

SELECT ZMATNR, ZLPN
FROM tblZMMGPNXREF
WHERE ZMATNR like '%89187605%' OR ZMATNR like '%89363059%';

Или регулярные выражения:

SELECT ZMATNR, ZLPN
FROM tblZMMGPNXREF
WHERE ZMATNR REGEXP '89187605|89363059';

Или, возможно , вам не нужно LIKEвообще, и вы можете просто использовать IN:

SELECT ZMATNR, ZLPN
FROM tblZMMGPNXREF
WHERE ZMATNR IN ('89187605', '89363059');

Это лучший выбор, если он делает то, что вы хотите.

Ответил 19/03/2020 в 22:05
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more