-- Remove leading and trailing double quotes from productname
SELECT ProductName, TRIM(BOTH '"' FROM ProductName) AS ProductName_trim
FROM superstore.product
WHERE LOCATE('"', ProductName) > 0
ORDER BY LENGTH(ProductName);
以下是结果记录之一:
"Elite 5"" Scissors", Elite 5"" Scissors
第一个“是否位于原点ProductName中的位置0?
答案 0 :(得分:0)
显然,查询的目的是仅显示trim()
可能正在执行某些操作的结果。
在SQL中,字符串中的位置计数(通常)从1开始,而不是0. 0用于表示没有匹配。
我建议将其写成:
SELECT p.ProductName, TRIM(BOTH '"' FROM p.ProductName) AS ProductName_trim
FROM superstore.product p
WHERE p.ProductName LIKE '%"%'
ORDER BY LENGTH(p.ProductName);
我认为使用LIKE
的目的更明确。