2016-12-04 57 views
0

的一部分,我有一列名和字符串这样的:MySQL的去除串

Animale Masculino Eau Toilette 30ml 
Polo Black Eau Toilette 200ml 

他们都必须在年底(30毫升,置50ml,100ml以下,200ml)中相同的模式。

我需要得到:

Animale Masculino Eau Toilette 
Polo Black Eau Toilette 

我怎样才能做到这一点与MySQL?

+0

我觉得REGEXP_SUBSTR不可用在MySQL。 – Ailton

回答

0

基于戈登的回答,我得到了它与下面的查询结果:

SELECT LEFT(nome, LENGTH(nome) - LOCATE(' ', REVERSE(nome))) from produtos 
0

一个比较简单的方法是:

select replace(col, substring_index(col, ' ', -1), '') 

但是,这并不工作,所有的时间(最后一个“字”可在列重复)。你想要一切到最后的空间。

select left(col, instr(reverse(col), ' ') + 1) 
+0

嗨戈登!您的第二个查询仅返回第一个字符(A,P) – Ailton

+0

@Ailton。 。 。它应该按照正确的顺序做正确的事情。 –