0

我对 SQL 比较陌生,我很难弄清楚这个查询。我需要显示哪些货物 (shipment_no) 是由多个卡车司机交付的。

这是我认为我需要的表中仅有的两列(名为 Package),以及我加入的整个其他表(卡车)。如您所见,shipping_no 1775 是唯一一个由不止一辆卡车/司机交付的货物。

包裹表 = Shipment_No - 1770,1771,1772,1773,1774,1774,1774,1775,1775,1775,1776,1777 和 Truck_no = 100,103,105,102,108,108,108,101,109,109,100,100(分别)

卡车表 = Truck_NO 100,101,102,103,104,105,106,107,108,109 和司机姓名 = JONES,DAVIS,GOMEZ,THOMPSON,HERSHEY,FERRIS,SHAVER,LEE,TOPI,ACKERMAN(分别)

这是我到目前为止所拥有的

select shipment_no, drivername
from package, truck
where package.truck_no=truck.truck_no
group by shipment_no, drivername

我的结果看起来像这样

 - Shipment_no = 
1770
1771
1772
1773
1774
1775
1775
1776
1777
 - Drivername =
JONES
THOMPSON
FERRIS
GOMEZ
TOPI
ACKERMAN
DAVIS
JONES
JONES

我需要显示的只是最后的运输号码,所以它看起来像这样。

-Shipment_no

-1775   

我已经尝试了几个小时,感谢您提供任何帮助。

非常感谢!

4

2 回答 2

1

尝试这个:

SELECT Shipment_no
FROM package
GROUP BY Shipment_no
HAVING COUNT(DISTINCT Truck_no) > 1
于 2013-10-16T01:46:15.040 回答
1
Select  shipment_no
From    Package
Group BY shipment_no
Having Count(Distinct Truck_No) > 1
于 2013-10-16T01:48:01.537 回答