【问题标题】:Filtering GridView entries by date按日期过滤 GridView 条目
【发布时间】:2019-09-21 09:41:23
【问题描述】:

在 Visual Studio ASP.NET 中

代码:

<asp:sqldatasource id="sqldatasource3" 
                   runat="server" 
                   connectionstring="<%$ ConnectionStrings:VPSConnectionString %>" 
                   selectcommand="SELECT [Price], [Date], [Route_Start], [Route_Destination] FROM [Billing] WHERE ([Username] = @Username)">
  <SelectParameters>
    <asp:SessionParameter Name="Username" 
                          SessionField="username_universal" 
                          Type="String" />
  </SelectParameters>
</asp:sqldatasource>

数据库:

我正在尝试根据当前日期的日期过滤网页上的条目。我已成功按用户名过滤,但我似乎无法弄清楚如何在此 .aspx 文件中使用当前日期。

非常感谢任何帮助。

【问题讨论】:

  • 请发布代码,而不是发布代码截图。
  • 我已经编辑了我的帖子

标签: c# asp.net database visual-studio parameters


【解决方案1】:

如果只是当前日期,您可以使用 SQL GETDATE() 函数。为了仅匹配日期,您需要在查询中执行 CAST(GETDATE() AS DATE)FLOOR(CAST(GETDATE() AS FLOAT)) 以正确匹配。

例子:

SELECT [Price]
,   [Date]
,   [Route_Start]
,   [Route_Destination] 
    FROM [Billing] 
    WHERE [Username] = @Username 
      AND CAST(GETDATE() AS DATE) = CAST([Date] AS DATE)

另请参阅:Compare DATETIME and DATE ignoring time portion

【讨论】:

  • 对于发现此内容的任何人,还可以比较大于或小于的日期。 [, >=]
猜你喜欢
  • 1970-01-01
  • 2015-09-20
  • 2021-11-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多