2017-05-31 221 views
0

方案:用户将从Excel工作表复制并粘贴数据(多行)到我的网页上,然后按提交。发生这种情况时,数据将被保存到SQL Server表中。当前日期也将保存在每行旁边。SQL Server:使用sql查询获取最后一行条目(多于一个)

现在,在另一个gridview中,我想只查看这些在特定日期已粘贴/保存到数据库的多行。

所以我想使用TOP/MAX(日期)但Top只返回指定的行,MAX只有1行。

任何在那之前已经做过或可以帮助得到一个工作查询吗?

+1

采样数据将帮助和你尝试过这么远吗? – maSTAShuFu

+0

我试过TOP和MAX。我在寻求建议? – someone13

+0

我认为你最好的办法是通过最大日期,并获得顶部1 desc – maSTAShuFu

回答

0

使用TOP WITH TIES为了得到所有最后的条目:

SELECT TOP(1) WITH TIES 
... 
ORDER BY submit_date DESC; 
+0

基于此我试过:select * FROM表 其中DateSaved IN(SELECT MAX(DateSaved)FROM表) select top(1)with ties * FROM table order by DateSaved desc - 但仍然只返回一行 – someone13

+0

然后在那里没有关系。也许是'DateSaved'中的时间部分?试试'ORDER BY CAST(DateSaved AS DATE)DESC'。 –

+0

谢谢。有用。忘记关于第二个值的sql记录。 – someone13

0

“特定日期”是基于特定日期还是24小时时间间隔?

您可以在GridView查询,其中日期字段高于或等于DATEADD数据(DD,-1,GETDATE())

或者,如果你指的是当前日期为当前日期,日期等于getdate的日期。

+0

说前为用户保存数据在2017年5月15日。我只想显示2017年5月15日。问题是,我不能使用“ dateadd(dd,-1,getdate())“这是因为有时几天或一周过去了,所以你不能准确地确定日期。 – someone13

相关问题