Phương pháp 1:
Bạn có thể sử dụng THAY THẾ () Phương pháp xóa ký tự đặc biệt trong mysql, không biết nó có hiệu quả không. Nhưng nó sẽ hoạt động.
Như bên dưới:
SELECT Replace(Replace(product_name,'@',''),'+','') as prod_type
From Table1
Phương pháp 2:
Nếu bạn có Tất cả các Bộ sạc đặc biệt khác thì hãy chọn cái này ( Nguồn )
-- ----------------------------
-- Function structure for `udf_cleanString`
-- ----------------------------
DROP FUNCTION IF EXISTS `udf_cleanString`;
DELIMITER ;;
CREATE FUNCTION `udf_cleanString`(`in_str` varchar(4096)) RETURNS varchar(4096) CHARSET utf8
BEGIN
DECLARE out_str VARCHAR(4096) DEFAULT '';
DECLARE c VARCHAR(4096) DEFAULT '';
DECLARE pointer INT DEFAULT 1;
IF ISNULL(in_str) THEN
RETURN NULL;
ELSE
WHILE pointer <= LENGTH(in_str) DO
SET c = MID(in_str, pointer, 1);
IF ASCII(c) > 31 AND ASCII(c) < 127 THEN
SET out_str = CONCAT(out_str, c);
END IF;
SET pointer = pointer + 1;
END WHILE;
END IF;
RETURN out_str;
END
;;
DELIMITER ;
Sau đó, chỉ cần gọi hàm như sau:
SELECT product_name, udf_cleanString(product_name) AS 'product_Type'
FROM table1;