不确定标题是否真的使问题清楚,但基本上我在组合框中使用“SELECT DISTINCT”来查看不同的日志时间,但是日志时间列的格式(无法更改)是示例:<登记/> 8月29日9:21 pm 8月29日晚上9:22
这是不好的,因为即使使用distinct也会将这些视为不同因为它们是不同的。 我想要的是:我想要一个sql语句,它将查看这些值并根据第一部分选择一个不同的值,例如8月29日,而不考虑时间。
任何人有任何想法/代码?
更新:: 我使用了ypercube的代码,但它适用于我想要的过滤器,以便当我选择日期时,例如29/08/2013,然后将datagrid光标带到logtime与此日期匹配的单元格,但是logtime必须保留在格式“8月29日晚上9点21分”,以及如何在c#中做到这一点的想法?
答案 0 :(得分:0)
我想你想要跟随
这样的事情SELECT DISTINCT(DATE(created_at)) FROM users;
答案 1 :(得分:0)
尝试:
SELECT DISTINCT DATEADD(dd, DATEDIFF(d, 0, cast(YourDateColumn as datetime)), 0)
FROM LogTable
由于演员而在大型数据集上效率非常低。但是因为你不能改变表格。否则我会建议添加一个persisted computed
列来对表进行更新,以及你可以添加索引。
答案 2 :(得分:0)
如果数据存储在DATETIME
列,并且您是最新版本的SQL-Server,则可以转换为DATE
:
SELECT DISTINCT
CAST(created_at AS DATE) AS date_created_at
FROM
SSISLog ;