MySQL 中以數值大小排序字串數字
在 MySQL 資料庫中處理儲存為字串的數字時,按數值大小排序可能比較棘手。以下問題突顯了這個問題:
問題:
如何按升序排列包含字串化數字的列,按照其數值大小而不是字元表示進行排序?
答案:
明確或隱式地將字串值轉換為整數可以實現正確的數值排序:
明確轉換:
<code class="language-sql">SELECT col FROM yourtable ORDER BY CAST(col AS UNSIGNED)</code>
在此範例中,CAST 在排序前將 col 列轉換為無符號整數。
隱式轉換:
<code class="language-sql">SELECT col FROM yourtable ORDER BY col + 0</code>
新增 0 會強制 MySQL 在排序前將 col 解釋為數值。
注意:
MySQL 從左到右解釋字串進行轉換。例如:
以上是如何在 MySQL 中對字串化數字進行數字排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!