Sql 借助表中的公共列检索不常见的列

Sql 借助表中的公共列检索不常见的列,sql,join,Sql,Join,如何借助SQL表中的公共列检索不常见的列(基于公共列orderid和orderamt,需要比较结果 范例 原始数据 结果 OrderID OrderAmt SellerID CustID SellerID1 CustID1 1675 2515 1251 197 1271 199 1971 5135 1259 201 1299 197 在常用列上自联接表并按不常用列筛

如何借助SQL表中的公共列检索不常见的列(基于公共列orderid和orderamt,需要比较结果

范例 原始数据

结果

OrderID OrderAmt    SellerID    CustID  SellerID1   CustID1
1675    2515        1251        197     1271        199
1971    5135        1259        201     1299        197

在常用列上自联接表并按不常用列筛选:

Select
  a.OrderID, a.OrderAmt,
  a.SellerID, a.CustID,
  b.SellerID As SellerID1, b.CustID As CustID1
From
  [SourceTable] a
Inner Join
  [SourceTable] b
On
  a.OrderID = b.OrderID AND a.OrderAmt = b.OrderAmt
Where
  a.SellerID <> b.SellerID OR a.CustID <> b.CustID
选择
a、 OrderID,a.OrderAmt,
a、 塞勒里德,a.库斯蒂德,
b、 SellerID作为SellerID1,b.CustID作为CustID1
从…起
[SourceTable]a
内连接
[SourceTable]b
在…上
a、 OrderID=b.OrderID和a.OrderAmt=b.OrderAmt
哪里
a、 SellerID b.SellerID或a.CustID b.CustID

您似乎希望根据
OrderID
OrderAmt
以及聚合
CustID
SellerId
对原始数据进行分组。请进一步解释您试图实现的目标。您使用的是哪种DBMS?
Select
  a.OrderID, a.OrderAmt,
  a.SellerID, a.CustID,
  b.SellerID As SellerID1, b.CustID As CustID1
From
  [SourceTable] a
Inner Join
  [SourceTable] b
On
  a.OrderID = b.OrderID AND a.OrderAmt = b.OrderAmt
Where
  a.SellerID <> b.SellerID OR a.CustID <> b.CustID