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

Microsoft SQL सर्वर में केवल दिनांक का उपयोग करके DATETIME फ़ील्ड को कैसे क्वेरी करें?

रेंज, या डेटडिफ फ़ंक्शन का उपयोग करें

 select * from test 
 where date between '03/19/2014' and '03/19/2014 23:59:59'

या

 select * from test 
 where datediff(day, date, '03/19/2014') = 0

अन्य विकल्प हैं:

  1. यदि डेटाबेस स्कीमा पर आपका नियंत्रण है, और आपको समय डेटा की आवश्यकता नहीं है, तो इसे निकाल लें।

  2. या, यदि आपको इसे रखना ही है, तो एक परिकलित स्तंभ विशेषता जोड़ें जिसमें दिनांक मान का समय भाग हटा दिया गया हो...

Alter table Test Add DateOnly As DateAdd(day, datediff(day, 0, date), 0)

या, SQL सर्वर के हाल के संस्करणों में...

Alter table Test Add DateOnly As Cast(DateAdd(day, datediff(day, 0, date), 0) as Date)

फिर, आप अपनी क्वेरी को सरलता से लिख सकते हैं:

select * from test 
where DateOnly = '03/19/2014'


  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 Server 2008 में INSERT करें

  2. SQL सर्वर में सभी अक्षम विदेशी कुंजी बाधाओं को कैसे वापस करें (T-SQL उदाहरण)

  3. समान स्ट्रिंग वाले sql रिकॉर्ड खोजें

  4. SQL सर्वर से Salesforce SOQL

  5. ASP.NET Core MVC, Entity Framework Core और SQL Server के साथ CRUD ऑपरेशन