如何在 SQL 查询中获取没有小时或分钟的日期以使用COUNT
? 我需要你告诉我重复的金额和制作日期。有什么建议吗?小心,我需要的不是 MySQL,而是 SQL server 2008 R2
SELECT TOP 2000
a.UserID,
(a.CharName) as maton,
(a.DeadCharName) as Victima,
(b.[level])as nivel_de_Victima,
COUNT (a.DeadCharName) As Veces,
a.actiontime <<---- Campo Fecha a selecionar
FROM PS_GameLog.dbo.Kill_Log a
INNER JOIN PS_GameData.dbo.Chars b
on a.CharID = b.CharID
WHERE a.CharID = 62336
ORDER BY Veces DESC
GROUP BY a.UserID,a.CharName,a.DeadCharName,b.[level]
ORDER BY Veces DESC
例如,对于日期的格式,我需要采用明显的 11 位数字,包括连字符。
2016-12-23 15:42:29.000
2016-12-23 15:42:28.000
2016-12-23 15:42:30.000
如果您有 SQL Server 2008+,则可以将其转换为
DATE
:如果没有,您可以将其转换为仅包含年、月和日的字符串:
要将日期字段转换为
YYYY-MM-DD
SQL Server 2008 R2 中的格式,可以使用CONVERT
带有以下参数的函数:Demo
如果你想要的格式是相当的
DD-MM-YYYY
,那么就是这样:Demo
如果您只需要没有时间的日期部分来进行计数,那么该字段的格式无关紧要。在这种情况下,最简单的事情就是创建一个
CAST
typeDATE
:Demo
在旧版本的 SQL(它不起作用
CONVERT(DATE,a.actiontime)
)中,我使用过:我将日期传递给 FLOAT,然后找到它的整数部分(从而删除时间),最后它再次变成日期。