2011-11-04 19 views
5

クエリを実行しているときにvarcharfloatに変換するにはどうすればよいですか?MySQLのデータ型をvarcharからfloatに変換する

+2

http://dev.mysql.com/doc/refman/5.0/en/cast-を参照してください。 functions.html、CASTを使用しますが、コンテンツ文字列がfloatに変換可能であることを確認してください。 – YvesR

答えて

14

mysqlの値をfloat型でキャストすることはできません。

以下の値を使用することができタイプ:

  • BINARY [(N)]
  • CHAR [(N)]
  • DATE
  • DATETIME
  • DECIMAL [(M [、D ])]
  • 署名[INTEGER]
  • TIME
  • UNSIGNED [INTEGER]

だからあなたの場合には、あなたは、小数点を使用する必要があり、例えば:

select cast(amount AS DECIMAL(10,2)) as 'float-value' from amounts 
-2
select cast(amount as float) as 'float-value' from amounts 
+1

フロートにキャストすることはできません。 – xmedeko

9

この単純なトリック0 + column_nameを使用してfloatに変換できます。

select 0 + column_name from table; 
+0

すごい!ニースのトリック。これはコンパクトで、10進数を超えた特定の数値を想定する必要はありません。 – VISQL

関連する問題