SQL Kodu ?

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
sair
Kıdemli Üye
Mesajlar: 288
Kayıt: 16 Haz 2003 04:41
Konum: Kastamonu
İletişim:

SQL Kodu ?

Mesaj gönderen sair »

Sabah kafam basmadı...

İki tablom var.. Master detail bağlı.. MAster tabloda kimlik bilgileri detail tabloda da yıl yıl alınan belgeler kayıtlı...

Master
IDNO ADI SOYADI
0001 Metin BEKTAŞ

DETAİL
IDNO DETNO YILI
1 0001 2006
2 0001 2007

Gibi...
Birinci tablodan adı soyadı gibi kayıtları alırken ikinci tablodan yıl itibarı ile belge almayan kayıtları listeleteceğim... yukardaki örnek detail tabloda 2008 yılı yok mesela.. İşte bu olmayan kaydın MAster tablodan adını soyadını v.s. almak istiyorum... Olmuyor bir türlü.. Fikri olan var mı ?
Geçip gideriz bizde ağızsız,dilsiz ve sorgusuz
İstanbul gibi düşeriz iki kıtaya birden...
En aşağılık düş, en büyük sevdadan belki
Erkek ölümler; bir uzun iç çekişle büyür göğsümüz
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Re: SQL Kodu ?

Mesaj gönderen aslangeri »

s.a.
yıl sabit olacak ise şöyle birşey yapılabilir belki

Kod: Tümünü seç

select adi , soyadi from master
where exist(select id from detno where yil =2008)=false 
exist bu şekilde kabul edermi bilmiyorum eğer kabul etmez ise şöyle bir sp de yapılabilir

Kod: Tümünü seç

for 
  select m.adi, m.soyadi, d.id
  from master
  left join detay d on d.masterno=m.id and d.yil=2008
do
begin
  if (d.id is null) then suspend;
end;
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
sair
Kıdemli Üye
Mesajlar: 288
Kayıt: 16 Haz 2003 04:41
Konum: Kastamonu
İletişim:

Re: SQL Kodu ?

Mesaj gönderen sair »

İlk Kod Çalışmıyor
ikinci kodda istediğimi vermiyor
üff
napcam ben ?
Geçip gideriz bizde ağızsız,dilsiz ve sorgusuz
İstanbul gibi düşeriz iki kıtaya birden...
En aşağılık düş, en büyük sevdadan belki
Erkek ölümler; bir uzun iç çekişle büyür göğsümüz
Hakan Can
Üye
Mesajlar: 634
Kayıt: 04 Mar 2005 04:27
Konum: Ankara

Re: SQL Kodu ?

Mesaj gönderen Hakan Can »

NOT EXISTS şeklinde sorguyu yapmak gerekiyor:

Kod: Tümünü seç

SELECT
  T1.IDNO,
  T1.ADI,
  T1.SOYADI
FROM MASTER T1
WHERE NOT EXISTS (SELECT T2.IDNO FROM DETAIL T2 WHERE T2.IDNO = T1.IDNO AND T2.YILI = 2008)
Cevapla