首頁 > 資料庫 > mysql教程 > 如何正確排序 MySQL 中以字串形式儲存的數字?

如何正確排序 MySQL 中以字串形式儲存的數字?

Patricia Arquette
發布: 2025-01-12 18:33:47
原創
891 人瀏覽過

How Can I Correctly Order Numbers Stored as Strings in MySQL?

MySQL 字串數字排序的正確方法

由於各種限制,MySQL 資料庫中數字有時會以 VARCHAR 資料類型儲存。但是,根據這些值排序資料時,字元優先於數值,導致數值排序不正確。

為了解決這個問題,您可以使用以下語法將字串值明確轉換為整數:

<code class="language-sql">SELECT col FROM yourtable
ORDER BY CAST(col AS UNSIGNED)</code>
登入後複製

此轉換強制資料庫將數值視為整數,確保正確的數值排序。

或者,您可以使用隱式將字串轉換為整數的數學運算,例如:

<code class="language-sql">SELECT col FROM yourtable
ORDER BY col + 0</code>
登入後複製

在這種情況下,加 0 會強制 MySQL 執行數字轉換。

請注意,MySQL 從左到右轉換字串。包含非數字字元或以非數字字元開頭的字串將轉換為 0,導致排序不正確。因此,必須確保字串值僅包含數字字元。

以上是如何正確排序 MySQL 中以字串形式儲存的數字?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板