在 SQL 中为 2 种不同的帐户类型获取相同付款的客户
Get customer with same payment for 2 different account types in SQL
有没有办法在 SQL 服务器中为 2 种不同帐户类型且支付相同金额的客户获得相同支付密钥的最终付款?
SELECT
p.Amount,
t.date,
p.PayKey,
t.BillKey
FROM
Transaction t
INNER JOIN
payment p ON t.PayKey = p.PayKey
LEFT JOIN
BillTable b ON t.BillKey = b.Sbillkey
AND t.Tbillkey = b.BillKey
WHERE
t.BillKey in (123457, 1786243)
我的成绩
Amount date PayKey BillKey
----------------------------------------
2540.00 2020-02-06 762944 123457
2540.00 2020-02-06 762944 1786243
但我想得到的最终结果是:
Amount date PayKey
-------------------------------
2540.00 2020-02-06 762944
添加一个Group By
.
SELECT
p.Amount,
t.date,
p.PayKey
FROM
Transaction t
INNER JOIN
payment p ON t.PayKey = p.PayKey
LEFT JOIN
BillTable b ON t.BillKey = b.Sbillkey
AND t.Tbillkey = b.BillKey
WHERE
t.BillKey in (123457, 1786243)
GROUP BY
p.Amount,
t.date,
p.PayKey
或使用 Distinct
到 return 个唯一行
SELECT DISTINCT
p.Amount,
t.date,
p.PayKey
FROM
Transaction t
INNER JOIN
payment p ON t.PayKey = p.PayKey
LEFT JOIN
BillTable b ON t.BillKey = b.Sbillkey
AND t.Tbillkey = b.BillKey
WHERE
t.BillKey in (123457, 1786243)
有没有办法在 SQL 服务器中为 2 种不同帐户类型且支付相同金额的客户获得相同支付密钥的最终付款?
SELECT
p.Amount,
t.date,
p.PayKey,
t.BillKey
FROM
Transaction t
INNER JOIN
payment p ON t.PayKey = p.PayKey
LEFT JOIN
BillTable b ON t.BillKey = b.Sbillkey
AND t.Tbillkey = b.BillKey
WHERE
t.BillKey in (123457, 1786243)
我的成绩
Amount date PayKey BillKey
----------------------------------------
2540.00 2020-02-06 762944 123457
2540.00 2020-02-06 762944 1786243
但我想得到的最终结果是:
Amount date PayKey
-------------------------------
2540.00 2020-02-06 762944
添加一个Group By
.
SELECT
p.Amount,
t.date,
p.PayKey
FROM
Transaction t
INNER JOIN
payment p ON t.PayKey = p.PayKey
LEFT JOIN
BillTable b ON t.BillKey = b.Sbillkey
AND t.Tbillkey = b.BillKey
WHERE
t.BillKey in (123457, 1786243)
GROUP BY
p.Amount,
t.date,
p.PayKey
或使用 Distinct
到 return 个唯一行
SELECT DISTINCT
p.Amount,
t.date,
p.PayKey
FROM
Transaction t
INNER JOIN
payment p ON t.PayKey = p.PayKey
LEFT JOIN
BillTable b ON t.BillKey = b.Sbillkey
AND t.Tbillkey = b.BillKey
WHERE
t.BillKey in (123457, 1786243)