কঠোরভাবে, পদ্ধতিটি a
সর্বনিম্ন সংস্থান নিবিড়:
a) select DATEADD(dd, DATEDIFF(dd, 0, getdate()), 0)
হাতে মোটামুটিভাবে খুব বেশি সময় নিয়ে কারও কারও দ্বারা মিলিয়ন সারিতে একই মোট সময়ের জন্য কম সিপিইউ নিবিড় প্রমাণিত: এসকিউএল সার্ভারের সবচেয়ে কার্যকরী উপায় তারিখ + সময় থেকে তারিখ পেতে?
আমি একই জায়গায় একই ফলাফল দেখতে অন্য কোথাও দেখতে পেলাম।
আমি তারিখ / তারিখটি পছন্দ করি কারণ:
- বর্ণচর ভাষা / তারিখের বিষয়গুলির সাথে সম্পর্কিত
উদাহরণ: আমার CASE এক্সপ্রেশনটি কেন অ- বিড়ম্বনীয় ?
- ভাসা অভ্যন্তরীণ স্টোরেজ উপর নির্ভর করে
- এটি "0" বেস পরিবর্তন করে মাসের প্রথম দিন, আগামীকাল ইত্যাদির কাজ করে
সম্পাদনা করুন, অক্টোবর 2011
SQL সার্ভার 2008+ জন্য, আপনি কাস্ট করতে পারবেন date
অর্থাত CAST(getdate() AS date)
। বা কেবল date
ডেটাটাইপ ব্যবহার করুন যাতে অপসারণের সময় নেই।
সম্পাদনা করুন, জানুয়ারী ২০১২
এটি কতটা নমনীয় তার একটি কার্যকরী উদাহরণ: স্কেল সার্ভারে বৃত্তাকার সময় বা তারিখের চিত্র দ্বারা গণনা করা দরকার
সম্পাদনা করুন, মে 2012
এটিকে WHERE ধারাগুলিতে এবং এই জাতীয় চিন্তাভাবনা না করে ব্যবহার করবেন না: একটি কলামে একটি ফাংশন বা CAST যুক্ত করা সূচক ব্যবহারকে অকার্যকর করে দেয়। 2 নম্বর এখানে দেখুন: http://www.simple-talk.com/sql/t-sql-programming/ten-common-sql-programming-mistkes/
এখন, এটির পরে এসকিউএল সার্ভার অপটিমাইজার সংস্করণগুলির CAST তারিখটি সঠিকভাবে পরিচালনার উদাহরণ রয়েছে, তবে সাধারণত এটি খারাপ ধারণা হবে ...
তারিখ 2 এর জন্য সেপ্টেম্বর 2018 সম্পাদনা করুন
DECLARE @datetime2value datetime2 = '02180912 11:45' --this is deliberately within datetime2, year 0218
DECLARE @datetime2epoch datetime2 = '19000101'
select DATEADD(dd, DATEDIFF(dd, @datetime2epoch, @datetime2value), @datetime2epoch)