我有一個MySQL查詢中,我需要運行一個子查詢進一步運行一個子查詢是這樣的:如何在MySQL中最內部的子查詢中使用外部表列?
SELECT id,
(SELECT COUNT(*) AS total FROM
(SELECT * FROM t3 WHERE t3.abcId = t1.id) t2
WHERE /*conditions*/) as total
FROM t1 WHERE /* condtions */;
現在這個查詢拋出錯誤unknown column t1.id.
請誰能告訴如何在最內層使用t1 table
列子查詢where
子句。我也試圖通過@variables
通過T1列值如下:
SELECT id, @var := t1.id,
(SELECT COUNT(*) AS total FROM
(SELECT * FROM t3 WHERE t3.abcId = @var) t2
WHERE /*conditions*/) as total
FROM t1 WHERE /* conditions */;
但在這種情況下@var
沒有得到每一行即總正在恢復,因爲它得到第一排相同的值更新。請爲此提出任何工作解決方案。
注意: - 我無法更新查詢流程,因爲它計算的東西非常複雜。上面提到的查詢只是原始查詢流程的一個例子。
不能使用外柱在子選擇 – Jens
我已經知道,在得到錯誤後。我正在問任何備用解決方案,因爲我必須這樣做。 – Ritesh