33

我需要一个 MySQL 函数来获取分隔符之前的可变长度字符串的左侧部分。

例如,使用分隔符字符串 '==' :

abcdef==12345     should return abcdef
abcdefgh==12      should return abcdefgh

同样的事情,但对于正确的部分......

4

3 回答 3

79
SELECT SUBSTRING_INDEX(column_name, '==', 1) FROM table ; // for left

SELECT SUBSTRING_INDEX(column_name, '==', -1) FROM table; // for right
于 2011-04-20T17:59:51.383 回答
5
select substring_index('abcdef==12345','==',1)

对于正确的部分,使用 -1 而不是 1。

于 2011-04-20T17:56:30.547 回答
1

我会研究 SQL 中的子字符串函数,即 SUBSTR,但它更多地用于字符串中的设置位置,而不是可变长度。

http://www.1keydata.com/sql/sql-substring.html

于 2011-04-20T18:04:24.410 回答