मुझे एक आईओटी डेटाटाइप में संग्रहीत डेटा में फ्लोट डेटाटाइप में संग्रहीत कुछ डेटा को परिवर्तित करने में कुछ समस्याएं आ रही हैं।एसक्यूएल फ्लोट को एसक्यूएल आईएनटी में कनवर्ट करना, खो गया डेटा
DECLARE @data TABLE
(
id INT,
weight FLOAT
)
INSERT INTO @data VALUES(1,0.015662)
SELECT CAST(weight * 1000000 AS INT) FROM @data
SELECT 0.015662 * 1000000
SELECT CAST(0.015662 * 1000000 AS INT)
वांछित परिणाम होगा:: ID = 1 VALUE = 15662
लेकिन जब @data
तालिका से आ रही है, मैं इस पाने के लिए नहीं लग रहे नीचे दिए गए उदाहरण मेरी समस्या को दिखाता है। इसके बजाय मुझे ID = 1 VALUE = 15661.
क्या किसी को भी कोई विचार है कि यह क्यों है? मैं अनुमान लगा रहा हूं कि यह किसी प्रकार की फ्लोट न्युअंस है। लेकिन मैंने कभी नहीं सोचा था कि उपरोक्त की तरह कुछ समस्या होगी। कोई विचार? आपकी सहायता के लिये पहले से ही धन्यवाद।
राउंड (वजन * 1000000.0, 0) बेहतर होगा क्योंकि हम नहीं जानते कि कौन सी सिस्टम लेखक उपयोग करता है। – Lex