0
私はMysqlテーブルを持っています テーブルの値をmeta_value
のサイズから最大値から最小値にソートしたいと考えています。MySqlの値が適切な値で配置されていません
値の順序を調べますか? どうすれば150,000,000
が1,555,555
より小さいか。
私はMysqlテーブルを持っています テーブルの値をmeta_value
のサイズから最大値から最小値にソートしたいと考えています。MySqlの値が適切な値で配置されていません
値の順序を調べますか? どうすれば150,000,000
が1,555,555
より小さいか。
Meta_valueは、CHAR列ではなく、数列です。あなたのメタ値が別のデータソースから来た場合は、自然な並べ替えを使用する必要があります。ORDER BY LENGTH(alphanumeric), alphanumeric
meta_valueの内容を制御できる場合は、列データ型をintまたはnumericまたはsomeその他の数値データ型。それからあなたはあなたが期待する種類を得るでしょう。ただし、既存のデータでデータ型を変更すると、非標準データに遭遇する危険性があります。そのため、その列に含まれる値の正確さを知る必要があります。
左揃えは、「meta_value」が数字ではなく文字フィールドであることを示しています。アルファベット順のソートが行われています。値が何かを表す場合は気にしません。したがって、3文字目では、 '0'は' 5'の前にソートされ、残りは履歴です。したがって、[MySQL 'Order By]の重複した可能性があります - 英数字を正しくソートすること(https://stackoverflow.com/questions/8557172/mysql-order-by-sorting-alphanumeric-correctly) –