संपादित करें:एक फ्लोट/इंट पर कास्टिंग अब SQL सर्वर के हाल के संस्करणों में काम नहीं करता है। इसके बजाय निम्नलिखित का प्रयोग करें:
select datediff(day, '1899-12-30T00:00:00', my_date_field)
from mytable
ध्यान दें कि स्ट्रिंग तिथि एक स्पष्ट दिनांक प्रारूप में होनी चाहिए ताकि यह आपके सर्वर की क्षेत्रीय सेटिंग्स से प्रभावित न हो।
SQL सर्वर के पुराने संस्करणों में, आप फ़्लोट पर कास्ट करके डेटटाइम से इंटीजर में कनवर्ट कर सकते हैं, फिर इंट में:
select cast(cast(my_date_field as float) as int)
from mytable
(एनबी:आप सीधे एक इंट पर नहीं डाल सकते हैं, क्योंकि एमएसएसक्यूएल मूल्य को गोल कर देता है यदि आप मध्याह्न के बाद हैं!)
यदि आपके डेटा में कोई ऑफ़सेट है, तो आप स्पष्ट रूप से इसे परिणाम से जोड़ या घटा सकते हैं
आप सीधे वापस कास्ट करके दूसरी दिशा में कनवर्ट कर सकते हैं:
select cast(my_integer_date as datetime)
from mytable