2012-10-10 144 views
1

我想嵌套兩個SELECT查詢,其中「內部」查詢的結果應該用於對「外部」查詢中的每個元組執行乘法。嵌套在查詢的選擇部分選擇查詢

「內部」查詢還應該訪問外部表的一個字段(在本例中爲tA.time)。

例子:

SELECT r1 * (SELECT r2 FROM tB WHERE time < tA.time) 
    FROM tA 
    WHERE xyz 
GROUP BY xyz 

第一個問題:一般這可能嗎?

第二個問題:這是可能使用SQLite嗎?

第3個問題:我以正確的方式勾畫了查詢嗎?我試圖用這種方式運行,但現在我無法完成它。

回答

1

只要子查詢返回一行,這應該適用於大多數SQL兼容的數據庫。我在SQLite中做了類似的事情,我懷疑它會起作用。

(如果子查詢返回多行,會出現一個錯誤。如果它不返回行,乘法運算的結果將是NULL。)

+0

謝謝你,我確保讓只有一行將LIMIT設置爲1 - 我發現用於測試的樣本數據已損壞,無法給我預期的結果。現在一切工作正常! – Simbi