Re: [SQL ]請問MSSQL CONVERT FLOAT 轉換型態到字 …

看板Database作者時間6年前 (2018/07/02 15:08), 編輯推噓2(202)
留言4則, 2人參與, 6年前最新討論串2/3 (看更多)
剛剛查了一下,然後測試一下,沒問題 先看一下這個連結 https://bit.ly/2IIJ3Vg CAST(CAST(@num AS DECIMAL(P,S)) AS VARCHAR(N)) Decimal 說明 https://bit.ly/2IIK7IK 先把你的 @num (float) 轉成 decimal 再轉成 varchar 就不會有科學符號了 http://sqlfiddle.com/#!18/9eecb/23305 然後你要動態調整 P 跟 S 的話,要用 Prepared Statements 去改 P 跟 S https://bit.ly/2KDcZE0 ※ 引述《kisha024 (4545454554)》之銘言: : 標題: Re: [SQL ]請問MSSQL CONVERT FLOAT 轉換型態到字 … : 時間: Sun Jul 1 15:54:39 2018 : : ※ 引述《m16ops ()》之銘言: : : ※ 引述《Aarlex (Aarlex)》之銘言: : : : A = 1230000010100 : : : CONVERT(VARCHAR,A) : : : 得到的結果是 1.230000010100 的科學符號表示方式 : : : 造成必須要擷取第一個CHAR 以及第三個CHAR之後的,再合併~ : : : 請問有沒有方法可以將他轉成 1230000010100.000... 的字串? : : 如果沒記錯 應該是 先對A做ROUND 然後再CONVERT : : LIKE THIS : : CONVERT(VARCHAR,ROUND(A,X)) X代表要取到小數底下第幾位 : : 不好意思 我也有同樣的問題 float轉字串 : : 爬了文 發現10年前 就有人發問了 也解答了 : : 但是 我先round再轉 還是會得到科學符號 : : 請問 還有其他方法嗎? 謝謝 : : p.s. SQL SERVER 版本是2012 : : -- : ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.251.146.64 : ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1530431682.A.C76.html : 推 cutekid: 要不要舉幾個例,input是什麼,希望結果又是什麼,好幫忙 07/01 16:20 : 如果float是98765432 round後再轉成字串變 9.87654e+007 : 如果float是9999.8888 round後再轉成字串變 9999.89 : 希望float是什麼 轉出來就是什麼 : 推 cutekid: 希望到小數第幾位呢 07/01 21:19 : 請問 有任何位數的做法嗎? 某個欄位的type是float 到底會存什麼值進去 也不知道 : ※ 編輯: kisha024 (114.40.119.144), 07/01/2018 21:26:57 : 推 funk6478: 用STR函數去轉 我測試沒問題 07/02 14:49 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.161.3.178 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1530515299.A.6FE.html

07/02 17:24, 6年前 , 1F
推(Y)
07/02 17:24, 1F

07/04 17:10, 6年前 , 2F
謝謝 轉成decimal就可以了
07/04 17:10, 2F

07/04 17:11, 6年前 , 3F
至於用Prepared Statements去改P跟S 我survey了一下
07/04 17:11, 3F

07/04 17:12, 6年前 , 4F
還是沒有頭緒
07/04 17:12, 4F
文章代碼(AID): #1RESzZR- (Database)
文章代碼(AID): #1RESzZR- (Database)