2016-07-01 34 views
-3

私はvarcharデータ型の列を持っています。 SQL Server 2014で10進データ型に変換する必要がありますか? たとえば、varcharの値.0462500を小数にする4.62500varcharからdecimalへのデータ変換

私はそういう点でいくつかの類似した質問を見ましたが、うまくいかなかったのです。

ありがとうございました!

+1

あなたのコードがあります!これまでに何を試しましたか?これは始めるのに最適な場所です:http://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/ – Marusyk

+3

あなたは何を試してみましたか?それはあなたのために "働いていない"ですか? –

答えて

0

あなたのVARCHAR変数がほぼ同じコンバージョン率が必要になることがわかっている場合、あなたは、単にそれらを変換してから、必要な乗算を実行するためにCAST()機能を使用することができます。

SELECT CAST(YourValue AS DECIMAL(7,5)) * 100 

同様にCONVERT()方法は、基本的に達成します別の構文を経由して同じこと:

SELECT CONVERT(DECIMAL(7,5),YourValue) * 100 

enter image description here

+0

ありがとうRion Willoams – Anj

+0

こんにちは@AnjanaHこれまたは任意の回答があなたの質問を解決した場合、チェックマークをクリックして[受諾する](http://meta.stackexchange.com/q/5234/179419)を検討してください。これは、あなたが解決策を見つけ出し、回答者とあなた自身の両方に評判を与えていることを広範なコミュニティに示します。 @Rion Williams。 – AHiggins

+0

あなたの答えはまさに私が望んでいたものでした。 Rionに感謝します。私は答えとしてマークした – Anj

0

CastまたはConvert機能を使用できます。

を変換します

select convert(decimal(10,5),.0462500)*100 

キャスト

select cast(.0462500 as decimal(10,5))*100 

注:不正な形式のデータ(変換できないデータ)がある場合は、あなたがTry_ConvertTry_Parseを使用する必要があります代わりに機能します。

Try_Convert

select try_convert(decimal(10,5),.0462500)*100 

Try_Parse

select try_parse('.0462500' as decimal(10,5))*100 
関連する問題