小编Ras*_*man的帖子

在 Where 子句中使用日期时间变量

我正在尝试将销售日期 >= 的所有数据提取到某个日期时间。当我执行查询时,出现以下错误:

消息 241,级别 16,状态 1,第 15 行
从字符串转换日期和/或时间时转换失败。

我应该改变什么才能让他的查询运行?下面是示例 DDL

Declare @datetime datetime = GetDate(), @sql varchar(max)

Create Table #dinonuggets
(
  saledate datetime
  ,item varchar(500)
)

Insert Into #dinonuggets Values
('2016-03-30 12:02:00.000','chair')
,('2016-03-04 08:12:48.000','stove')
,('2016-03-07 09:37:39.000','washer')


Set @sql = 'Select * FROM #dinonuggets WHERE saledate >= '+@datetime+' '
Print @sql
Exec (@sql)
Run Code Online (Sandbox Code Playgroud)

我的预期输出将是
03/30/2016 12:02:00.000 椅子,
因为这是唯一符合标准的数据

sql-server t-sql sql-server-2008-r2

2
推荐指数
1
解决办法
1万
查看次数

在 SQL Server 中格式化电话号码

我正在使用 SQL Server 2008,我发现此解决方案仅适用于 SQL Server 2012 - 在 SQL Server 2008 中格式化电话号码的等效方法是什么?

FORMAT([PhoneField],'###-###-####')
Run Code Online (Sandbox Code Playgroud)

sql-server-2008 sql-server t-sql

1
推荐指数
1
解决办法
3万
查看次数