我有我下面的SQL查詢:將常規選擇語句轉換爲相關子查詢?
SELECT name, transaction_id, MIN(transaction_date)
FROM clients
JOIN transactions ON clients.client_id = transactions.client_id
GROUP BY name, transaction_id;
,我想變成一個相關子查詢結構如下:
SELECT a, b, MIN(c)
FROM t1
JOIN t2 ON t1.d = t2.d
WHERE c IN
(SELECT *
FROM t2
HAVING....)
凡a, b, c
是列名和t1, t2
是表。
但我在這個過程中遇到困難。
作爲參考,原始問題是要求返回每個客戶的最早的transaction_date以及相應的transaction_id。
所以,如果transactions
表有以下幾點:
transaction_id client_id transaction_date
1 1 02-02-17
2 1 02-01-17
3 2 02-03-17
4 2 02-04-17
相關子查詢將返回:
name transaction_id transaction_date
John 2 02-01-17
Mary 3 02-03-17
爲什麼你想把它變成一個相關的子查詢? –
這是原始問題的一部分要求。我想出了在常規select語句中如何做到這一點,我只是有問題把它變成相關子查詢。 – 5120bee