Как выбрать запись, содержащую только определенный символ SQL - PullRequest
0 голосов
/ 28 мая 2020

Предположим, у меня есть несколько записей, как показано ниже

AB01234-T100
AB01235-RE-T200
AB01236-O-T100
AB01237-O
AB01238

Мне нужна только первая запись в качестве вывода. Что я могу придумать, так это указать, что запись должна содержать A, B и T в строке, но не знаю, как ее закодировать.

WHERE MyColumn LIKE 'AB_____-T__' кажется наиболее близким совпадением, но в некоторых особых случаях , в середине может быть больше символов.

1 Ответ

0 голосов
/ 28 мая 2020

Вы можете применить несколько условий LIKE для достижения результата

declare @TABLE TABLE(charvalue VARCHAR(20))

INSERT INTO @TABLE values
('AB01234-T100')
,('AB01235-RE-T200')
,('AB01236-O-T100')
,('AB01237-O')
,('AB01238');

SELECT * FROM @TABLE
WHERE charvalue LIKE 'AB%-T%' and 
charvalue not like 'AB%-[^T]%'
+--------------+
|  charvalue   |
+--------------+
| AB01234-T100 |
+--------------+
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...