在SQL Server 2008 R2中首次创建时,我有一个最多3个字符的字符串.
我想用前导零填充它,所以如果它的原始值是'1'那么新值将是'001'.或者,如果其原始值为"23",则新值为"023".或者,如果其原始值为"124",则新值与原始值相同.
我正在使用SQL Server 2008 R2.我如何使用T-SQL执行此操作?
我想转换像这样的字符串:
'10/15/2008 10:06:32 PM'
Run Code Online (Sandbox Code Playgroud)
进入Sql Server中的等效DATETIME值.
在Oracle中,我会说:
TO_DATE('10/15/2008 10:06:32 PM','MM/DD/YYYY HH:MI:SS AM')
Run Code Online (Sandbox Code Playgroud)
这个问题暗示我必须将字符串解析为其中一种标准格式,然后使用其中一种代码进行转换.对于如此平凡的行动来说,这似乎是荒谬的.有没有更简单的方法?
t-sql sql-server datetime sql-server-2005 string-to-datetime
我有一个问题,我的表存储日期为
2009-01-10 10:00:00.000
Run Code Online (Sandbox Code Playgroud)
我有另一个表存储日期为
2009-01-10 12:00:00.000
Run Code Online (Sandbox Code Playgroud)
我知道它们不一样但是日期是,在SQL中是否可以轻松地缩短时间并保留比较日期?谢谢.
这不起作用:
IF EXISTS (( SELECT 1
FROM dbo.SalesOrder )
AND (GETDATE() BETWEEN '07:00:00' AND '16:00:00'))
BEGIN
PRINT 'yes!'
END
Run Code Online (Sandbox Code Playgroud)
我想要做:
如果SalesOrder表格中存在某些内容并且当前时间是早上7点到下午4点,则打印"是"
我假设我可能不得不在那里进行转换,但我不确定如何正确地进行转换.
有人想帮我一把吗?