[英]Get max value from varchar column in MySQL
我需要從 varchar 類型的列中獲取最大值。 值不要太復雜,只是簡單的值,如CAR 001
(無空格)、 CAR 002
(無空格)、 CAR 003
(無空格)。
我嘗試了與此類似的其他問題的任何答案,但它總是在我的 SQL 語法中出現錯誤,而我嘗試的最后一個是
SELECT MAX(CONVERT(`code`, UNSIGNED)) AS MAX FROM `account`
,但我得到的是0。真正的必須是3。 請幫助我,無論如何對不起英語不好。
嘗試使用SUBSTRING_INDEX
來隔離數字部分:
SELECT *
FROM yourTable
WHERE SUBSTRING_INDEX(col, ' ', -1) = (SELECT MAX(SUBSTRING_INDEX(col, ' ', -1))
FROM yourTable);
假設只有一條記錄具有最大 ID,我們可以更簡單地使用LIMIT
查詢:
SELECT *
FROM yourTable
ORDER BY SUBSTRING_INDEX(col, ' ', -1) DESC
LIMIT 1;
嘗試這個
select max(SUBSTRING_INDEX(col, ' ', -1)) from TableName
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.