Encontre o valor máximo no último dígito

Sep 24 2020

Estou usando o MySQL 5.5. Estou enfrentando um problema de como encontrar o valor máximo no último dígito.

Por exemplo, abaixo da tabela, quero obter o valor máximo detectado no último dígito. O resultado deve ser100-1-15

Table name: abc
+----+------------+
| id | code       |
+----+------------+    
| 1  |   100-1-1  |
| 2  |   100-1-2  |
| 3  |   100-1-15 |
| 4  |   100-1-6  |
| 5  |   100-1-3  |
| 6  |   100-1-5  |
| 7  |   100-1-9  |
+----+------------+

Estou usando abaixo a consulta SQL, mas não funciona:

SELECT id,max(code) FROM abc;

Espero que alguém possa me orientar como resolvê-lo e obter o código máximo 100-1-15. Obrigado.

Respostas

3 juergend Sep 24 2020 at 12:10
SELECT *
from abc
order by SUBSTRING_INDEX(code, '-', -1) + 0 desc
limit 1