1
93
关键是要用 DATEADD 和 DATEDIFF 以及适当的SQL TimeSpan枚举。
请注意,当您在第二个地板时,如果使用0,通常会出现算术溢出。因此,选择一个已知的值,该值一定要低于您要创建的日期时间。 |
2
28
在SQL Server中,有一个小技巧可以做到:
您将日期时间转换为一个浮点,它将日期表示为整数部分,时间表示为经过的一天的分数。把小数部分切掉,然后把它转换回日期时间,你就得到了当天开始时的午夜。 这可能比所有的dateadd和datediff工具更有效。打字当然容易。 |
3
11
在转换/转换解决方案的基础上展开,在Microsoft SQL Server 2008中,可以执行以下操作:
只是替换
此转换中不涉及字符串。 对于即席查询或更新,这是可以的,但是对于键联接或大量使用的处理,最好在处理过程中处理转换,或者重新定义表以具有适当的键和数据。
2005年,您可以使用更凌乱的地板:
我也不认为这会用到字符串转换,但是我不能用实际的效率和扶手椅的估算值来比较。 |
4
6
我已经用过 @Portman's answer 多年来,作为一个参考,地板日期和工作转移到一个你可能会发现有用的功能。 我并没有宣称它的性能,只是把它作为一个工具提供给用户。 我问你,如果你决定投反对票,请也投反对票。 @波特曼的回答 因为我的代码是他的派生代码。
用途:
|
5
2
这个 CONVERT() 函数也可以这样做,这取决于您使用的样式。 |
6
1
太糟糕了,它不是Oracle,否则您可以使用trunc()或to_char()。 但我在SQL Server上也有类似的问题,并使用了convert()和datediff()方法,正如引用的那样。 here |
7
0
有几种方法可以剥下这只猫的皮。
|
8
0
dateadd和datediff可以帮助完成许多不同的任务。例如,您可以查找任何月份的最后一天,也可以查找上个月或下个月的最后一天。
|
9
-2
因为PostgreSQL也是一个“SQL服务器”,我会提到
这完全符合你的要求。 例如: select date_trunc('hour',current_timestamp); date_trunc ------------------------ 2009-02-18 07:00:00-08 (1 row) |
sqlrobert · SQL-如何查找不包含特定字段值的一组记录 1 年前 |
Nick Fleetwood · 调度语法的LINQ查询 2 年前 |
Mateen Bagheri · 选择表的计数并选择其自身 2 年前 |
Java · 使用交叉应用同时显示两列 2 年前 |