1

いくつかの値 (テキストといくつかの int または float 値) を含むフィールド値(テキスト型) があります。

したがって、フロート値と整数値のみを選択し、フィールドでテーマを並べ替えたいと思います。

現時点では、フロートを個別に取得できますが、問題は、結果として、フロートまたは整数形式ではなく、テキスト形式で順序付けられたテーマを取得することです (これは正常だと思います)。例 :

33
33358
80
88000
90
99

マスターをお願いします。結果をテキストではなくフロートと見なし、代わりにこの結果を取得するようにクエリに指示するにはどうすればよいですか。

33
80
90
99
33358
88000

前もって感謝します

4

4 に答える 4

12
ORDER BY field * 1

または

ORDER BY CAST(field as DECIMAL(10,5))

どちらも同じことを行う必要がありますが、最初のほうが簡単に/速く書くことができます。

于 2012-12-18T08:43:10.237 に答える
3

以下のコードのように使用します

ORDER BY ABS(columnname)
于 2012-12-18T08:42:34.273 に答える
1

テキスト型のフィールドに混合値を格納することはお勧めできません。フィールドでソートとフィルタリングを行いたい場合は、テキスト、int、float などの別のフィールドとして使用することをお勧めします。
データベース管理者として深入りすると、パフォーマンスが低下します。

于 2012-12-18T09:03:42.277 に答える
0

クエリでその変数を選択し、その列で結果セットを並べ替えるときに、VALUE を float/int 形式にキャストします。

例/ SELECT CAST(value as decimal(10,5)) AS customname FROM tablename order by customname

好きなようにキャストできることを覚えておいてください。

于 2012-12-18T08:52:16.363 に答える