Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

डेटटाइम से INT . में कनवर्ट करें

संपादित करें:एक फ्लोट/इंट पर कास्टिंग अब 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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर (T-SQL) में वर्तमान लॉगिन आईडी प्राप्त करें

  2. SQL सर्वर में एक पहचान कॉलम का मूल बीज लौटाएं

  3. मैं SQL सर्वर में बिगिंट (यूनिक्स टाइमस्टैम्प) को डेटाटाइम में कैसे परिवर्तित कर सकता हूं?

  4. तालिका-मूल्यवान फ़ंक्शन को कॉल करते समय एक क्वेरी संकेत जोड़ना

  5. तालिका बनाने के 2 तरीके यदि यह SQL सर्वर में मौजूद नहीं है