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

SQL सर्वर में एक तारीख फ़्लोर करें

कुंजी उपयुक्त SQL समय अवधि गणना के साथ DATEADD और DATEDIFF का उपयोग करना है।

declare @datetime datetime;
set @datetime = getdate();
select @datetime;
select dateadd(year,datediff(year,0,@datetime),0);
select dateadd(month,datediff(month,0,@datetime),0);
select dateadd(day,datediff(day,0,@datetime),0);
select dateadd(hour,datediff(hour,0,@datetime),0);
select dateadd(minute,datediff(minute,0,@datetime),0);
select dateadd(second,datediff(second,'2000-01-01',@datetime),'2000-01-01');
select dateadd(week,datediff(week,0,@datetime),-1); --Beginning of week is Sunday
select dateadd(week,datediff(week,0,@datetime),0); --Beginning of week is Monday

ध्यान दें कि जब आप सेकंड तक फ़्लोरिंग कर रहे होते हैं, तो यदि आप 0 का उपयोग करते हैं, तो आपको अक्सर अंकगणितीय अतिप्रवाह प्राप्त होगा। इसलिए एक ज्ञात मान चुनें, जो उस डेटाटाइम से कम होने की गारंटी है जिसे आप फ़्लोर करने का प्रयास कर रहे हैं।



  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 सर्वर में डेटा फ़ाइलों को कैसे स्थानांतरित करें - भाग 1

  2. SQL सर्वर में ट्रिगर ईवेंट की सूची कैसे लौटाएं?

  3. एसक्यूएल सर्वर इतिहास तालिका - एसपी या ट्रिगर के माध्यम से पॉप्युलेट करें?

  4. एसक्यूएल:बिट या चार बेहतर क्या है (1)

  5. कैसे बताएं कि SQL सर्वर में एक कंप्यूटेड कॉलम नियतात्मक है या नहीं?