我有一个名称字段的数据库。 (即姓氏M.姓氏或只是名字姓氏)。
尝试按姓氏过滤。
如何查询查找最后一个空间?SQL Like查询最后一场比赛
喜欢的东西
SELECT * FROM人,其中名称,比如 “%A%”(但空间是最后的空间)
感谢,
三通
我有一个名称字段的数据库。 (即姓氏M.姓氏或只是名字姓氏)。
尝试按姓氏过滤。
如何查询查找最后一个空间?SQL Like查询最后一场比赛
喜欢的东西
SELECT * FROM人,其中名称,比如 “%A%”(但空间是最后的空间)
感谢,
三通
如果这是MySQL,你可以考虑使用SUBSTRING_INDEX()
函数(与count = -1
)。
如果使用某个版本的Microsoft SQL Server,则可以使用reverse()
这个字符串,然后用charindex()
找到第一个空格。
SELECT CASE WHEN [Name] LIKE '% [^ ]%'
THEN SUBSTRING([Name],
LEN([Name]) - CHARINDEX(' ', REVERSE([Name])) + 1,
8000)
ELSE [Name]
END AS [LastName]
FROM [Customers]
我不认为你可以只用LIKE。你使用的是什么RDBMS? – 2010-06-05 17:27:12
嗨马丁,我正在使用mysql。 – teepusink 2010-06-05 20:59:17