Çalışmayan SQL kod?

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
hakan1970
Üye
Mesajlar: 44
Kayıt: 07 May 2009 02:37

Çalışmayan SQL kod?

Mesaj gönderen hakan1970 »

TABLO1

ALAN1
ALAN2


Bu desende bir tablom var
Seçilen 2 ayrı ALAN1 arasında ALAN2 leri ortak olan kayıtları bulmak istiyorum

Access de iç içe iki sql çalıştırarak yani from dan sonra bir sql çalıştırarak bunu hallediyorum ama Firebird de çalışmıyor

Yani Access de çalışan şu kod Firebird de çalışmıyor. Buradaki hata nedir

SELECT * FROM [SELECT * FROM TABLO1 WHERE TABLO1.ALAN1=1]. AS [XX] WHERE ((([TABLO1].[ALAN1])=2) AND (([XX].ALAN2)=[TABLO1].[ALAN2]));

Tekrar özetle TABLO1 tablosunda ALAN1 leri 1 ve 2 olarak seçilen kayıtlar arasında ALAN2 leri ortak olanları istiyorum
Bunu bir fonksiyon yerine sorgu ile yazılım içinden yapmak istiyorum. Yukardaki örnek kod benim Access de çalışatırdığım ama firebird de çalıştıramadığım bir kod.

Yardımlarınız için şimdiden teşekkür ederim
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: Çalışmayan SQL kod?

Mesaj gönderen sabanakman »

Sorgu yazma yeteneği olarak join sorgu yazma biçimini de incelemenizi tavsiye ederim. Eğer soruyu yanlış anlamadıysam

Kod: Tümünü seç

select ana.* from TABLO1 as ana
left join TABLO1 as alt on ana.ALAN2=alt.ALAN2
where ana.ALAN1=1 and alt.ALAN1=2 and alt.ALAN2 is not Null
sorgusundan faydalanabilirsiniz.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Cevapla