我正从Oracle迁移到sql server 2008。
我对系统中的双表有一些疑问,
SELECT TO_CHAR(TRUNC(sysdate,'DAY') - 0,'YYYYMMDD')FROM DUAL
由于SQL Server中没有Dual表,如何在SQL Server上使用convert转换getdate实现相同的结果?
我还听说为双重添加了一个虚拟表,但这应该适用于我的查询吗?
答案 0 :(得分:2)
您可以使用convert()
而不是from
子句:
SELECT REPLACE(CONVERT(VARCHAR(10), getdate(), 121), '-', '')
或使用112:
SELECT CONVERT(VARCHAR(8), getdate(), 112)
答案 1 :(得分:0)
在SQL Server中,FROM TABLE
是可选的,但是在JOIN和其他带有别名的复杂语法的情况下,仍可能是必需的,这是创建它的最佳方法。
Select 'x' C into dbo.Dual
(1 row affected)