मैं निम्नलिखित प्रश्न हैं:अंकगणित अतिप्रवाह त्रुटि को अभिव्यक्ति को डेटा प्रकार int में परिवर्तित करने के आसपास कैसे मिलता है?
-- CTE to remove outliers, e.g. remove the fastest and slowest results
;WITH MinMaxCTE AS
(
SELECT ServerName, CONVERT(VARCHAR(10), UpdatedOn, 101) AS [Date], Version,
MIN(JaguarStartupTime) AS MinStartTime, MAX(JaguarStartupTime) AS MaxStartTime
FROM dbo.MachineConfiguration (NOLOCK)
WHERE DomainLogin NOT IN (SELECT DomainLogin FROM dbo.SupportGroup)
GROUP BY ServerName, CONVERT(VARCHAR(10), UpdatedOn, 101), Version
)
SELECT AVG(mc.JaguarStartupTime) AS AverageTime
, COUNT(*) AS NumEntries
, mc.Version
FROM #Eligible mc (NOLOCK)
JOIN MinMaxCTE cte ON mc.ServerName = cte.ServerName
AND CONVERT(VARCHAR(10), mc.UpdatedOn, 101) = cte.[Date]
AND mc.Version = cte.Version
AND mc.JaguarStartupTime <> cte.MinStartTime
AND mc.JaguarStartupTime <> cte.MaxStartTime
GROUP BY mc.Version
ORDER BY Version DESC, AVG(mc.JaguarStartupTime) ASC
#Eligible अस्थायी तालिका की परिभाषा कोई फर्क नहीं पड़ता हालत या एकत्रीकरण मैं बाहर टिप्पणी
create table #Eligible (
Version nvarchar(50), JaguarStartupTime int,
ServerName nvarchar(50), UpdatedOn datetime)
है, मैं हमेशा निम्न त्रुटि मिलती है: Arithmetic overflow error converting expression to data type int
।
मैं यहां से कहां से जा सकता हूं? मैं इसे और कैसे डीबग करूं?
संपादित करें: नमूना डेटा
Version JaguarStartupTime ServerName UpdatedOn
6.4.6.082 16040 NewOrleansLA 2012-08-08 12:34:12.330
6.5.1.012 40390 BatonRougeLA 2012-08-08 18:33:17.440
6.5.1.012 48379 HonoluluHI 2012-08-09 04:42:50.453
आपके पास इस क्वेरी में एकाधिक समेकन हैं, जो कोई त्रुटि फेंक रहा है? क्या आप कुछ नमूना डेटा पोस्ट कर सकते हैं? 'Dbo.MachineConfiguration' की तालिका संरचना क्या है? – Taryn
@bluefeet 'मशीन कॉन्फ़िगरेशन' की संरचना बिल्कुल # अस्थायी अस्थायी तालिका के समान है। वास्तव में, अस्थायी तालिका 'मशीन कॉन्फ़िगरेशन' का सबसेट है। – AngryHacker
यदि आप सीटी से * जुड़ने से पहले, आदि चुनते हैं, तो क्या आपको कोई त्रुटि मिलती है? – Taryn