2008-02-13

SQL'de Tarih Sorunlarını Gidermek

Bugüne kadar bir çok kişiden SQL Server 2005'te tarih ile ilgili sorunlarını dinledim ve sorunlarına bulduğum çözümleri sundum. Benden yardım isteyenlerin büyük kısmının istediği tarih formatlarından birisi de sadece yıl/ay/gün bilgisini alabilmek yada diğer bir ifadeyle zaman bilgisini sorgularında sıfırlamak(00:00:00) istemeleri. Yani bugünün tarihini şöyle almak istiyorlardı. 2008-02-13 00:00:00

Bu sonuca ulaşacak iki farklı SQL çözümüm var:

Çözüm-1:
SELECT CAST(FLOOR(CAST(GETDATE() AS FLOAT)) AS SMALLDATETIME)

Çözüm-2:
SELECT CAST(CAST(GETDATE() AS VARCHAR(12)) AS SMALLDATETIME)

MS SQL Server 2005 karşılaşılan bu vb sorunları MS SQL Server 2008 de çözmüşler. Dileyenler konu ile ilgili yazmış olduğum MS SQL Server 2008 - Yeni Tarih Veri Tipleri'ni okuyabilir.

1 yorum:

Adsız dedi ki...

declare @bugun datetime
set @bugun= cast((convert(varchar(10),getdate(),102)) as datetime)

böyle yazınca da sadece günün tarihini alabiliyorum.
sadettin çetin

.::YASAL UYARI::.

©2004-2016 Mehmet GÜZEL, http://www.mehmetguzel.net/ & http://www.mehmetguzel.com/

Site içeriği kaynak gösterilmek koşuluyla yayınlanabilir. Yazılan yazı ve yorumlar sadece yazı ve yorum sahiplerini bağlar.