私は自転車の名前とその価格を保存します。価格の列のデータ型がvarchar型であるならば、それは正しく動作しませんPHPとMySQLで最高価格で注文されたレコードを最初に表示します
bike 800 cc 1600$
bike 400 cc 800$
bike 200 cc 400$
bike 100 cc 200$
私は自転車の名前とその価格を保存します。価格の列のデータ型がvarchar型であるならば、それは正しく動作しませんPHPとMySQLで最高価格で注文されたレコードを最初に表示します
bike 800 cc 1600$
bike 400 cc 800$
bike 200 cc 400$
bike 100 cc 200$
SELECT *
FROM bikes
ORDER BY price DESC
SELECT * FROM bikes ORDER BY price DESC
チェック: は今、私はのように、最初の(最も高価な)すべての私のバイクは最高価格で注文を示してほしいです。したがって、以下のトリックを使用してください:
SELECT * FROM bikes ORDER BY price+0 desc
これは、CAST演算子にソートするのではなく、クイックフィックスです。
0000が追加されたとき結果が正確でない。これを正当化できますか? –
テーブルの価格列のデータ型は何ですか? –
Thnx Mateが動作しています。 –
結果が正確でない一部の価格は、450000を加算したものと同じですが、正常ではありません。 –
次に価格が間違っています。 –
価格列の問題が間違っているようです。 VARCHAR()は金額を格納するための適切な型ではありません。 –