Excel SQL查询错误:详细信息:";Microsoft SQL:靠近'的语法不正确=';。字符串';]后未闭合的引号)在Source';中&引用;

Excel SQL查询错误:详细信息:";Microsoft SQL:靠近'的语法不正确=';。字符串';]后未闭合的引号)在Source';中&引用;,sql,excel,tsql,Sql,Excel,Tsql,我在几个月前用这段代码创建了四个查询,它们执行得很好。我正在创建一个新查询,复制和粘贴一个旧查询,并且只更改数据库中的表引用。我看不到任何未关闭的引号,并且对于为什么t-SQL代码可以在旧查询中工作而不能在我正在创建的新查询中工作感到困惑。我甚至尝试过复制和粘贴一个已经运行的精确查询,但仍然会出现错误。你知道问题出在哪里吗 let Source = Sql.Database("Delta", "enteliwebDB", [Query="SELECT TOP 100 percent

我在几个月前用这段代码创建了四个查询,它们执行得很好。我正在创建一个新查询,复制和粘贴一个旧查询,并且只更改数据库中的表引用。我看不到任何未关闭的引号,并且对于为什么t-SQL代码可以在旧查询中工作而不能在我正在创建的新查询中工作感到困惑。我甚至尝试过复制和粘贴一个已经运行的精确查询,但仍然会出现错误。你知道问题出在哪里吗

let
    Source = Sql.Database("Delta", "enteliwebDB", [Query="SELECT TOP 100 percent        #(lf)ts AS 'Timestamp', value#(lf)FROM [enteliwebDB].[dbo].[UASTP_150000_TL63]#(lf)where ts between dateadd(day, datediff(day, 0 ,getdate())-31, 0) #(lf)and #(lf)dateadd(day,datediff(day, 0 ,getdate()), 0)"])
in
    Source

在SQL查询中,有换行符#(lf)。移除所有#(左),它应该可以工作

let
 Source = Sql.Database("Delta", "enteliwebDB", [Query="SELECT TOP 100 PERCENT ts AS 'Timestamp', value FROM [enteliwebDB].[dbo].[UASTP_150000_TL63] WHERE ts BETWEEN DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()) - 31, 0) AND DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), 0)"])

in
 Source

这是用什么语言写的?听起来像是您的
]
正在添加到您的sql server。这是一个来自Excel的T-sql查询。正如你所看到的,所有的引号都是封闭的。我想说的是,我不熟悉这种语法(
Let
In
)。这是权力问题吗?“Excel”非常广泛,Excel中至少有两种其他原生方式查询sql server,以及Excel之外连接Excel和sql server的无数方式。不是tsql问题这是Excel 2016中的一种强大查询。