2017-09-10 36 views
-1

こんにちは、私は、データベースに "FLOAT"のデータ型を持つ予約語である "変更"という名前の列を並べ替える問題があります。MySqlの浮動小数点浮動小数点データ型

さまざまな方法で試しましたが、それでもそれを得ることはできません。

"select * from data order by CAST('change' AS SIGNED) DESC"; 
"select * from data order by ABS(change) DESC"; 
"select * from data order by ABS(change - float) DESC"; 
"select CAST(change as float) AS ABC* from data order by ABC DESC"; 

iは、異なる組み合わせの多くを試みたが、まだ運enter image description here

はHERESに私のサンプル・データベース の絵は、事前にあなたに感謝しません!

+1

MySQLは、区切り文字付き識別子のバックティックを使用します。 – jarlh

+0

*「運がまだありません」* - 運がないのは何ですか?並べ替えで?あるいは構文エラーが出ますか? – axiac

+0

この質問を確認する:https://stackoverflow.com/questions/11321491/when-to-use-single-quotes-double-quotes-and-backticks-in-mysql – axiac

答えて

1

使用してバック

ORDER BY `CHANGE` DESC 

を刻む各RDBMSは、予約語を処理する別の方法があります。 MySQLはバックティックを使用します: `

あなたが持っているエラーは、キャストとは関係ありません。

+0

バックチックが機能します!有難うございます。ほぼ3時間のシングルクォーテーションをとり、キャストを再整理しました。私がしなければならないのはバックティックです。再度、感謝します! – Gray

0

ユーザー 'sagi'は、予約語「change」を使用すると、キャストやシングルクォーテーションは必要ありませんが、元の質問に対してはバックティックが機能します。キーワードはキーワード1の左側にあります。皆さん、ありがとうございました!

関連する問題