sql - 如何在 DBVisualizer 中一次在单个查询中执行多个临时表?
问题描述
我加入了一家新公司,他们正在使用 DBVisualizer。在过去的 5 年中,我使用了 SQL Server,现在我很欣赏 SQL Server 的智能查询执行能力。
我面临的问题之一是一次执行多个临时表。例如,尝试执行以下操作会引发错误,提示 #abc 不可用。这在 SQL Server 中不是问题,因为它曾经巧妙地执行它。
drop table if exists #abc;
create table #abc as
select a.ID, a.EMP
from sandbox.table1 as a
drop table if exists #cde;
create table #cde as
select a2.ID, sum(a1.sum) as Rev
from sandbox.table2 as a1
join #abc as a2 on a1.ID = a2.ID
group by a2.ID
解决方案
如果您希望在运行时将某些查询用作表,请尝试WITH它将帮助您在运行时为特定查询创建临时视图。那么您可以将此查询输出用作表并使用它。
例子 -
with userTBL as (
select *
from user
where activated=true
),
usertiming as (
select date,userID
from timingtabls
where date=currentdate
)
select * from userTBL left join timing t on t.userID=id;
推荐阅读
- reactjs - 权限被拒绝(公钥)!
- java - for 循环中的 java.NullPointerException
- c++11 - C ++:总线错误:在方法中分配字符串时为10
- php - 如何为 Symfony NexySlackBundle 使用多个端点
- excel - 我可以使用 vlookup 或 match/index 来查找左侧的数据,而不是查找值吗?
- r - 为循环期间构建的模型分配不同的名称
- javascript - 数组javascript中的对象
- regex - 如何在 Dart Flutter 中的字符串表达式中隔离小数
- c# - 无法读取简单的列表框文本/数字
- ios - UIView 自下而上的动画问题