我有一个带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)
答案 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