Bir tablodan önceki güne ait tüm satırları seçmek için iyi bir SQL Deyimi arıyorum. Tablo bir datetime sütunu içeriyor. SQL Server 2005 kullanıyorum.
bugün zaman yok:
SELECT dateadd(day,datediff(day,0,GETDATE()),0)
zaman yok:
SELECT dateadd(day,datediff(day,1,GETDATE()),0)
sadece düne ait tüm satırlar için sorgu:
select
*
from yourTable
WHERE YourDate >= dateadd(day,datediff(day,1,GETDATE()),0)
AND YourDate < dateadd(day,datediff(day,0,GETDATE()),0)
SQL'de "today" değerini almak için:
convert(date, GETDATE())
Dün"ü" almak için:
DATEADD(day, -1, convert(date, GETDATE()))
Bugün eksi X gün" elde etmek için: -1'i -X olarak değiştirin.
Yani dünkü tüm satırlar için:
select * from tablename
where date >= DATEADD(day, -1, convert(date, GETDATE()))
and date < convert(date, GETDATE())