Güncelleştirmeler aşağıdan.DIŞ JOIN sonucu eksik satır yok, WHERE yan tümcesi (Geçici çözüm bulundu)
Her kayıt için, onu ve ondan sonra ortaya çıkan tüm diğer kayıtları veya kendisinin en son kaydıysa NULL değerini döndüren bir dış dış birleştirme yapmaya çalışıyorum. O,
SELECT A.[CR#], A.REGIS_STATUSDATE, B.REGIS_STATUSDATE
FROM CR_ADMIN_REGIS_STATUS A LEFT OUTER JOIN CR_ADMIN_REGIS_STATUS B
ON A.[CR#]=B.[CR#] AND A.REGIS_STATUSDATE < B.REGIS_STATUSDATE
Sorunum bu Verilen [CR #] için, A.REGIS_STATUSDATE maksimum olduğu zaman, (ve bu nedenle B.REGIS_STATUSDATE bunun daha büyük olamaz) olmasıdır geçerli: Bu benim sql kodudur satır sonuçta yer almıyor.
CR# A.REGIS_STATUSDATE B.REGIS_STATUSDATE
1 5/1/12 5/2/12
1 5/1/12 5/3/12
1 5/2/12 5/3/12
2 5/1/12 5/2/12
göz önüne alındığında:
CR# REGIS_STATUSDATE
1 5/1/12
1 5/2/12
1 5/3/12
2 5/1/12
2 5/2/12
beklediğim benim sorgu sonucu
CR# A.REGIS_STATUSDATE B.REGIS_STATUSDATE
1 5/1/12 5/2/12
1 5/1/12 5/3/12
1 5/2/12 5/3/12
1 5/3/12 NULL
2 5/1/12 5/2/12
2 5/2/12 NULL
Onun yerine bu olsun olması: CR_ADMIN_REGIS_STATUS şuna benzer Örneğin
, benim sorgum bir LEFT OUTER JOIN, ve WHERE yan tümcesi yok, tüm satırları özgün tablodan bekliyorum Sonuçta, bu durum böyle değil. Burada neyi özlüyorum?
Düzenleme: Bu Access 2007
Güncelleme: Ben Ben ayrı bir tabloya tablo CR_ADMIN_REGIS_STATUS bölümleri kopyalanamaz ve bu karşı benim sorgu çalıştırmanız durumunda ne olacağını görmek karar verdi. Ben sadece düz bir şekilde bütün tabloyu kopyaladım bile (el ile) sorguyu çalıştı! Bu aslında sadece kopyalama ve yapıştırma yaparken, başka bir tabloya SEÇMEYECEĞİMde sorun devam edecekti.
Sonunda ben
SELECT *
FROM CR_ADMIN_REGIS_STATUS
UNION ALL SELECT TOP 1 *
FROM CR_ADMIN_REGIS_STATUS;
karşı sorgu çalıştırmanız durumunda yerine CR_ADMIN_REGIS_STATUS kendisinden daha benim sorgu istenen sonuç verdiğini keşfetti. Tuhaf. Aynı zamanda, benzer bir tabloya benzer bir sorguya başladım, bu da başlangıçtan beri işe yaradı, bu yüzden bu tek bir tabloyla sınırlı bir sorun gibi görünüyor.
kullanıyorsunuz DBMS? Erişim? –
Peki bu da bana kafamı kaşımıyor –
Sorguyu çalıştıran MS Access 2010'da beklenen sonuca ulaşıyorum. – Fionnuala