নিম্নলিখিত উপাদান দেওয়া
DECLARE @D DATE = '2013-10-13'
DECLARE @T TIME(7) = '23:59:59.9999999'
DATETIME2(7)
মান সহ ফলাফল তৈরি করতে তাদের একত্রিত করার সর্বোত্তম উপায় কী '2013-10-13 23:59:59.9999999'
?
কিছু জিনিস যা কাজ করে না তা নীচে তালিকাভুক্ত করা হয়েছে।
SELECT @D + @T
অপেরাড ডেটা টাইপের তারিখ অ্যাড অপারেটরের জন্য অবৈধ।
SELECT CAST(@D AS DATETIME2(7)) + @T
অপেরাড ডেটা টাইপ ডেটটাইম 2 অ্যাড অপারেটরের জন্য অবৈধ।
SELECT DATEADD(NANOSECOND,DATEDIFF(NANOSECOND,CAST('00:00:00.0000000' AS TIME),@T),@D)
তারিখের ফাংশনটির ফলে একটি ওভারফ্লো হয়েছিল। দুটি তারিখ / সময় উদাহরণ পৃথক করে ডেটপার্টগুলির সংখ্যা খুব বেশি। কম সুনির্দিষ্ট ডেট পার্ট সহ ডেটেফ ব্যবহার করার চেষ্টা করুন।
* অ্যাজুর এসকিউএল ডেটাবেস এবং এসকিউএল সার্ভার 2016 ব্যবহার করে ওভারফ্লো এড়ানো যায় DATEDIFF_BIG
।
SELECT CAST(@D AS DATETIME) + @T
ডেটা টাইপ ডেটটাইম এবং সময় অ্যাড অপারেটরের সাথে বেমানান।
SELECT CAST(@D AS DATETIME) + CAST(@T AS DATETIME)
ফলাফল দেয় তবে নির্ভুলতা হারায়
2013-10-13 23:59:59.997