我在SQL Server 2012上,我正在尝试编写SELECT
语句,该语句使用LEFT()
和RIGHT()
函数显示ProductName
如果第3个字母来自产品名称的末尾是一个特殊的字母
示例第三个字母是'a'
答案 0 :(得分:1)
这里最简单的选择是使用like
:
select ProductName from Products where ProductName like '%a__'
%
是一个匹配任意数量字符的通配符,_
匹配单个字符。 like '%a__'
表示倒数第三个字母为a
工作示例:http://www.sqlfiddle.com/#!6/6b479/8
如果您想使用left
和right
,则应使用:
select ProductName from Products
where len(ProductName)>=3 AND left(right(ProductName,3),1)='a'
工作示例:http://www.sqlfiddle.com/#!6/6b479/2
left(right(ProductName,3),1)
表示:取最后三个字母,然后取出第一个字母。我们还会检查len(ProductName)>=3
以确保至少有三个字母,否则我们可能会返回以a
开头的简短产品名称。