2 tabloyu aldığımı söyle: Müşteriler ve Siparişler. Bir Müşterinin çok siparişi olabilir.SQL Bildirimi Yardımı - Her bir Müşteri için en son Siparişi Seçin
Şimdi, herhangi bir Müşteriyi son Siparişi ile göstermem gerekiyor. Bu, bir Müşterinin birden fazla siparişe sahip olması, yalnızca en son Giriş Süresine sahip Siparişi göstermesi anlamına gelir.
Bu başıma yönetilen ne kadar geçerli: tabii
SELECT a.*, b.Id
FROM Customer a INNER JOIN Order b ON b.CustomerID = a.Id
ORDER BY b.EntryTime DESC
İstediğim bu değil her Müşteri, ilk son Order gösteren bir veya birden fazla Siparişler ile tüm müşteriler döndürür
. Aklım bu noktada bir rutede sıkışmıştı, bu yüzden birilerinin beni doğru yöne yönlendirebileceğini umuyorum.Bazı nedenlerle, ben düşünüyorum MAX sözdizimini bir yerlerde kullanmalıyım, ama şimdi sadece beni kaçırıyor.
GÜNCELLEME: burada birkaç cevapları geçiyor sonra (bir sürü var!), Ben bir hata yaptım fark etti: Onun son kaydı ile herhangi Müşteri anlamına geliyordu. Yani bir emri yoksa, onu listelememe gerek yok demektir.
UPDATE2: Büyük olasılıkla başkalarına karışmamasına neden olan kendi SQL ifademi düzeltdim. Böyle
Müşteriniz tablo bir OrderID sahiptir. Bu doğru mu? –
Evet, SQL'de belirtildiği gibi. – alextansc
Müşteri tablonuzun bir OrderID'si varsa, sorunuz mantıklı değildir. Doğru olsaydı, her siparişin farklı bir müşterisi olduğunu söylerdin. Sipariş tablonuzun Müşteri Kimliği olmadığından emin misiniz? –