Mam identyfikator kolumny typu varchar tabeli i kolumny, a wartości to m1, m2, ... , m9,m10,m11,m12, a następnie używam zapytania
wybierz MAX(id) z tabeli
Ale wynik jako m9, ponieważ traktuje m10 jako „m”, „1”, „0” jako pojedyncze znaki. więc m9>m1(0).
Proszę o pomoc? jak zapytanie uzyskać max id z typu varchar?
0
N4ta nata
22 luty 2012, 12:08
2 odpowiedzi
Najlepsza odpowiedź
select max(CAST((substring(id,2)) AS DECIMAL(5,2))) from table;
Powinien załatwić sprawę.
1
msgmash.com
22 luty 2012, 12:17
Możesz użyć podciągu, aby osiągnąć maksymalną liczbę
select max(CAST((substring(id,2)) AS DECIMAL(5,0))) from table
Na końcu możesz też cancat z 'm'
select concat('m'+ max(CAST((substring(id,2)) AS DECIMAL(5,0)))) from table
2
Kayser
22 luty 2012, 12:24
Podobne pytania
Nowe pytania
php
PHP to szeroko stosowany, wysokopoziomowy, dynamiczny, zorientowany obiektowo i interpretowany język skryptowy przeznaczony głównie do tworzenia stron WWW po stronie serwera. Używane w przypadku pytań dotyczących języka PHP.