SORU
17 Mayıs 2012, PERŞEMBE


Nasıl tüm tarihler SQL Server belirli bir tarihten daha büyük için sorgu?

Çalışıyorum:

SELECT * 
FROM dbo.March2010 A
WHERE A.Date >= 2010-04-01;

A.Date. 2010-03-04 00:00:00.000

Ancak, bu işe yaramıyor. Neden herkes için bir referans sağlayabilir?

CEVAP
17 Mayıs 2012, PERŞEMBE


select *  
from dbo.March2010 A 
where A.Date >= Convert(datetime, '2010-04-01' )

Özünde sorgunuzda, 2010-4-01 matematiksel bir ifade olarak kabul edilir, bu yüzden okumak

select *  
from dbo.March2010 A 
where A.Date >= 2005; 

(2010 minus 4 minus 1 is 2005 * *11, ve kullanarak uygun tek bir tırnak dönüştürerek bu sorunu çözecektir.)

Teknik olarak, çözümleyici kurtulmak için izin verebilir

select *  
from dbo.March2010 A 
where A.Date >= '2010-04-01'

sizin için dönüşüm yapacağız, ama benim görüşüme göre açıkça peşinden gelecek DateTime bakım için bir programcı için dönüştürme daha az okunabilir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Santozz Yazz

    Santozz Yazz

    23 Mart 2014
  • Stanislav Petrov

    Stanislav Pe

    7 ŞUBAT 2009
  • Troy Hunt

    Troy Hunt

    29 EYLÜL 2011