У меня есть следующие образцы данных:
create table num_test
(
numb int,
names varchar(20)
);
insert into num_test values(123456,'ABC');
insert into num_test values(12345,'DCD');
insert into num_test values(1234567,'ECD');
insert into num_test values(123456789,'BCD');
У меня есть входное значение:
declare @num int = 123456
Я хочу найти left
6 или 5 целых чисел. Если совпадение с left 6
, то left 5
следует игнорировать, иначе left 5
должно отображаться.
Итак, ожидаемый результат должен быть:
numb names
-----------------
123456 ABC
Запрос:
declare @num int = 123456
SELECT * FROM num_test
where numb = LEFT(@num,6) or numb = LEFT(@num,5)