我在SQL Server 2012中有一个包含200万条记录的表.我试图找到所有那些不以字符结尾的记录,例如.
码:
DECLARE @TABLE TABLE
(
ID INT IDENTITY(1,1),
MYVAL VARCHAR(50)
)
INSERT @TABLE
VALUES ('4639016:42:'),
('3279022:42:'),
('4605907:42:XY'),
('4190078:42:ZS')
我使用的代码:
SELECT *
FROM @TABLE
WHERE MYVAL NOT LIKE '%:[A-Z]'
但它没有返回正确的结果.
我还想拉出所有那些以’:’结尾的记录
有人可以分享你的专业知识吗?
谢谢
最佳答案 您可以使用RIGHT来获取最后一个字符:
SELECT *
FROM @TABLE
WHERE RIGHT(MYVAL,1) != ':';
-- RIGHT(MYVAL,1) LIKE '[A-Z]'