Sql 使用连接获取数据
Sql fetch data with join
这里有两个tableTransaction和Refundtransaction
我想使用连接获取数据,应该获取重复数据。
我正在使用这个查询
select tr.transactionid, tr.customerid, tr.custname,
rt.Amount, rt.Refund_Amount, rt.transactionid, rt.referenceid
from Transaction tr
left join RefundTransaction rt on rt.referenceid = tr.transactionid
它没有提供正确的数据。它不是从退款数据中选择重复数据
请帮忙
我在这里插入图片,您可以从中获得实际场景。
根据图像,您需要将 TRANSACTION
table 放在 LEFT JOIN
中。然后只有你可以从 RefundTransaction
table.
中获取所有条目
SELECT rt.transactionid
,tr.customerid
,tr.custname
,tr.Amount AS Refund_Amount
,rt.transactionid
,rt.referenceid
,rt.Amount
FROM RefundTransaction rt
LEFT JOIN [TRANSACTION] tr ON rt.referenceid = tr.transactionid
如果您想 select 所有数据,您必须进行完整的外部连接
select tr.transactionid, tr.customerid, tr.custname, rt.Amount, rt.Refund_Amount, rt.transactionid, rt.referenceid from Transaction tr full outer join RefundTransaction rt on rt.referenceid = tr.transactionid
here 您可以找到有关联接的更多信息
你对连接做的恰恰相反。
这应该有效。
select tr.transactionid, tr.customerid, tr.custname,
rt.Amount, rt.Refund_Amount, rt.transactionid, rt.referenceid
from RefundTransaction tr left join
Transaction rt
on rt.referenceid = tr.transactionid
这可以根据您的图像使用两者之间的内部连接简单地解决
SELECT t.transactionid, t.customerid, t.custname,
rt.Amount, rt.Refund_Amount, rt.transactionid, rt.referenceid
FROM TRANSACTION t
innerjoin [RefundTransaction ] rt ON rt.referenceid = t.transactionid
这里有两个tableTransaction和Refundtransaction
我想使用连接获取数据,应该获取重复数据。
我正在使用这个查询
select tr.transactionid, tr.customerid, tr.custname,
rt.Amount, rt.Refund_Amount, rt.transactionid, rt.referenceid
from Transaction tr
left join RefundTransaction rt on rt.referenceid = tr.transactionid
它没有提供正确的数据。它不是从退款数据中选择重复数据
请帮忙 我在这里插入图片,您可以从中获得实际场景。
根据图像,您需要将 TRANSACTION
table 放在 LEFT JOIN
中。然后只有你可以从 RefundTransaction
table.
SELECT rt.transactionid
,tr.customerid
,tr.custname
,tr.Amount AS Refund_Amount
,rt.transactionid
,rt.referenceid
,rt.Amount
FROM RefundTransaction rt
LEFT JOIN [TRANSACTION] tr ON rt.referenceid = tr.transactionid
如果您想 select 所有数据,您必须进行完整的外部连接
select tr.transactionid, tr.customerid, tr.custname, rt.Amount, rt.Refund_Amount, rt.transactionid, rt.referenceid from Transaction tr full outer join RefundTransaction rt on rt.referenceid = tr.transactionid
here 您可以找到有关联接的更多信息
你对连接做的恰恰相反。
这应该有效。
select tr.transactionid, tr.customerid, tr.custname,
rt.Amount, rt.Refund_Amount, rt.transactionid, rt.referenceid
from RefundTransaction tr left join
Transaction rt
on rt.referenceid = tr.transactionid
这可以根据您的图像使用两者之间的内部连接简单地解决
SELECT t.transactionid, t.customerid, t.custname,
rt.Amount, rt.Refund_Amount, rt.transactionid, rt.referenceid
FROM TRANSACTION t
innerjoin [RefundTransaction ] rt ON rt.referenceid = t.transactionid