通过MYSQL从字符串中读取特定部分

时间:2017-01-19 15:15:41

标签: mysql

我有一个带varchar字段的表,其中包含一个带变量lenght的描述。我想从左边读取第三部分(从左边开始写入第二部分和第三部分)。

例如,如果表格包含:

|col1 |
+-----+
|20161512_NL_Luxus_1_DE |
|20161512_CR_Premium_2_DE |
|20161512_SV_SDT_4_DE|

预期结果:

|col1 |
+-----+
|Luxus|
|Premium|
|SDT|

我该怎么做?

感谢您的支持!

已经尝试过这样,但我认为这不正确......

SUBSTRING_INDEX(`col1`, '_', 2)

2 个答案:

答案 0 :(得分:0)

可能效率不高,但鉴于您的具体要求,您可以这样做

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(`col1`, '_', -3),'_', 1) from `table`;

答案 1 :(得分:0)

你应该像这样嵌套这些函数

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX("20161512_NL_Luxus_1_DE","_",-3),"_",1)

Luxus