SQL'i Öğrenme - ItemID'yi temel alan aynı tablodaki ayrıntıları seçme

SQL öğrenim aşamasındayım. Yerleştirilen tüm siparişlerin detaylarını içeren bir tablom var. Belirli bir öğeyi içeren tüm siparişleri bulmam gerekiyor. Sipariş numaralarını almak için ItemID = 102011'i seçmem gerekiyor ve bu kayıtları içeren tüm OrderId kayıtlarını seçiyorlar. Bunun nasıl gerçekleşeceğinden tam olarak emin değilim.

Her şey bir masada.

Teşekkürler

0
Lütfen tablo tanımlarını ekleyin. Bu, sorunuzu yanıtlamanıza yardımcı olur.
katma yazar Pieter, kaynak

3 cevap

Bu muhtemelen SQL'inizin lezzetine bağlı olacaktır, ancak SQL Server'da aşağıdaki gibi bir şey iyi çalışır:

SELECT * FROM OrdersItems WHERE OrderID IN (SELECT OrderID FROM OrderItems WHERE ItemId = 102011)
0
katma

Böyle bir şey deneyin (tablonuzun belirli bir miktarını varsayarak):

select *
from yourOrdersTable
where ItemID = 102011
order by OrderId
0
katma

Her şeyden ne demek istediğinden emin değilsiniz. Tablo yapılarını kaydedebilir misin? Bir offshotta, aradığınız şey bu:

SELECT * FROM  
WHERE order_id IN (SELECT * FROM  WHERE ItemID = 102011)

veya bu

SELECT * FROM  WHERE ItemID = 102011 ORDER BY OrderId
0
katma