问题描述
是否可以在 Superset sql Lab 中禁用 sql 包装器?
因此,我的 sql Server 语法查询不起作用。
例如我想使用 #temp
表,但 inner_qry
破坏了它。
源 sql,运行良好
SELECT
GTD = GETDATE()
INTO #tmp
SELECT
*
FROM #tmp
原始 sql,失败
SELECT TOP 1000 *
FROM (SELECT
GTD = GETDATE()
INTO #tmp
SELECT
*
FROM #tmp) AS inner_qry
超集版本 0.37.2。
提前致谢。
解决方法
目前这是不可能的。
您能否重写查询以使用 WITH
而不是临时表?那么它应该可以工作:
WITH tmp AS (SELECT GTD = GETDATE())
SELECT * FROM tmp
我以前从未使用过 SQL Server,但我在 Postgres 中测试了一个简单的查询,它在包装后也能工作:
WITH tmptable AS (SELECT * FROM events)
SELECT * FROM tmptable
变成:
SELECT ts AS ts,topic AS topic,value AS value
FROM
(WITH tmptable AS
(SELECT *
FROM events) SELECT *
FROM tmptable) AS expr_qry
LIMIT 1000
哪个有效。