[英]Is it possible to reuse scalar result from a single subquery in insert query in Postgres?
[英]Reuse the result from subquery in Azure Stream Analytics Query
我正在使用Azure流分析,並且在查詢部分遇到了一些問題。 這是我的代碼。
WITH subquery as (
SELECT
messageId,
deviceId,
temperature,
humidity,
EventProcessedUtcTime,
DemoML(temperature, humidity) as result1
from DemoInput
)
SELECT
messageId as messageId,
deviceId as deviceId,
temperature as temperature,
humidity as humidity,
EventProcessedUtcTime as EventProcessedUtcTime,
result1.[Scored Labels] as result,
result1.[Scored Probabilities] as resultProbability
INTO
[DemoOutput]
FROM
[subquery]
SELECT
result1
INTO
[c2d]
FROM
[subquery]
DemoML是一個函數,它將返回結果。 我想將result1放入兩個不同的輸出中。 但是我只設法將result1放到一個輸出中。 我該如何實現? 我對SQL完全陌生。
您可以使用INSERT ... OUTPUT ... INTO ... SELECT
插入兩次:
WITH subquery as (
SELECT
messageId,
deviceId,
temperature,
humidity,
EventProcessedUtcTime,
DemoML(temperature, humidity) as result1
from DemoInput
)
INSERT INTO target_1(col1,...)
OUTPUT inserted.col1, ...
INTO target_2(col1, ..)
SELECT
messageId as messageId,
deviceId as deviceId,
temperature as temperature,
humidity as humidity,
EventProcessedUtcTime as EventProcessedUtcTime,
result1.[Scored Labels] as result,
result1.[Scored Probabilities] as resultProbability
FROM [subquery];
簡化:
CREATE TABLE t1(i INT);
CREATE TABLE t2(i INT);
CREATE TABLE src(i INT);
INSERT INTO src(i) VALUES(10),(20);
INSERT INTO t1(i) -- target one
OUTPUT inserted.i
INTO t2(i) -- target two
SELECT i
FROM src;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.