SQL取表中從最新創建時間起一週內的所有數據:
如表:TableName (RID int,InsertTime datetime)
從TableName 表中取出從最新一條數據開始,一週內的所有數據。
MSSQL寫法如下:
--獲取符合條件的數據declare @lastInsertTime datetime;
select top 1 @lastInsertTime from TableName
order by InsertTime desc;
select RID,InsertTime from TableName where datediff
(week,datetime,@lastInsertTime)=0;
--返回符合條件的數據集合,以存儲過程的方式實現,以便調用給前臺直接得到數據集合。
create procedure SP_GetWeekData(@where nvarchar(1000))
as
declare @tempSQL varchar(4000);
--組裝SQL語句,獲取TableName 表中取出從最新一條數據開始,一週內的所有數據。
set @tempSQL='declare @lastInsertTime datetime;'
+ 'select top 1 @lastInsertTime from TableName '
+ @where
+ 'order by InsertTime desc; '
+ 'select RID,InsertTime from TableName where '
+ @where
+ ' and datediff(week,datetime,@lastInsertTime)=0; '
EXECUTE sp_executesql @tempSQL ;
查詢數據表中最後一週記錄
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.