17 EYLÜL 2008, ÇARŞAMBA
Kat SQL Server'da bir tarih
SQL Server'da nasıl ""/gün/yıl/saat/saniye / dakika için bir DATETİME kat yapıyorum
Hadi bir tarih var2008-09-17 12:56:53.430o zaman döşeme çıktı
- Yıl: 2008-01-01 00:00:00.000
- Ay: 2008-09-01 00:00:00.000
- Gün: 2008-09-17 00:00:00.000
- Saat: 2008-09-17 12:00:00.000
- Dakika: 2008-09-17 12:56:00.000
- İkinci: 2008-09-17 12:56:53.000
CEVAP
17 EYLÜL 2008, ÇARŞAMBA
Anahtarı uygun SQL zaman aralığı numaralandırma ile birlikte DATEADD DATEDIFF kullanmaktır.
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');
Bir anda döşeme, genellikle 0 kullanırsanız aritmetik taşma alacak unutmayın. Çekme kat çalıştığınız datetime göre daha düşük olması garanti olduğu bilinen bir değer.
Bunu Paylaş: