我需要查询其中包含有关产品的信息。产品名称如下所示:
Samsung TV 1500 - LED - USA
Sony 19.2/2.12/12V3/320/AE-EL:SILVER-ITA
这是我正在使用的:
SELECT
TRIM(
LEFT(
a.description,
(LENGTH( a.description) - LOCATE('-', a.description))
)
)
FROM products
但它提供的是Samsung TV 1500
,而不是Samsung TV 1500 - LED
。
我需要的只是删除最后一个 -USA
、-IND
等。
最佳答案
您需要反转该值,以便最后一个出现的位置成为第一个出现的位置。
SELECT
TRIM(
LEFT(
a.description,
(LENGTH( a.description) - LOCATE('-', REVERSE(a.description))+1)
)
)
FROM products
关于mysql - 提取整个字符串直到最后一个分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47998744/