Smilecoc 2024-01-24 14:09 采纳率: 100%
浏览 9
已结题

直接传入参数和Exec执行同一语句结果不一致

在SQL Server2016中用convert函数转化日期,用直接传入参数和Exec执行结果不一致,

代码如下:


declare @etl_date varchar(50)
set @etl_date='2023-10-31' 
SELECT convert(datetime,@etl_date,110)
exec('SELECT  convert(datetime,' + @etl_date + ',110)')

执行结果如下:

img

求指点

  • 写回答

1条回答 默认 最新

  • ruo40018293 2024-01-24 15:00
    关注

    declare @etl_date varchar(50)
    set @etl_date='2023-10-31'
    SELECT 'SELECT convert(datetime,''' + @etl_date + ''',110)'
    exec('SELECT convert(datetime,''' + @etl_date + ''',110)')

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 2月1日
  • 已采纳回答 1月24日
  • 创建了问题 1月24日