Firebird'de Oracle With komutu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
hacker_10-ur
Üye
Mesajlar: 27
Kayıt: 05 Oca 2008 10:05

Firebird'de Oracle With komutu

Mesaj gönderen hacker_10-ur »

arkadaşlar oracle'da with komutu ile sql içinde bir view benzeri sanal tablo oluşturabiliyoruz.
Örnek Olarak

Kod: Tümünü seç

with(select adi,soyadi,id from hasta) m 
select * from muracaat where hasta_id = m.id 
Bunun gibi! Bu with komutu firebird'de nedir onu bulamadım bilen arkadaşlar yardımcı olabilirse benim için iyi olur. şimdiden teşekkür ederim.
En son hacker_10-ur tarafından 28 Nis 2010 05:37 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
DELPHI - C ++
PASCAL - TURBO C
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3077
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: Firebird yardım!

Mesaj gönderen sabanakman »

Bildiğim kadarıyla FB alt sorguları desktekliyordu, bunu da ihtiyaca göre join yaparak sorgu yazabilirsiniz.

Kod: Tümünü seç

select * from muracaat
left join (select adi,soyadi,id from hasta) as m on hasta_id = m.id
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
Lost Soul
Üye
Mesajlar: 1064
Kayıt: 01 Nis 2007 02:55
Konum: mekan ANKARA toprak ELAZIĞ
İletişim:

Re: Firebird yardım!

Mesaj gönderen Lost Soul »

sabanakman yazdı:Bildiğim kadarıyla FB alt sorguları desktekliyordu, bunu da ihtiyaca göre join yaparak sorgu yazabilirsiniz.

Kod: Tümünü seç

select * from muracaat
left join (select adi,soyadi,id from hasta) as m on hasta_id = m.id
yanlış değilsem bu tür sorgu firebird 1.5 sürümünde desteklenmiyordu. 2 ve sonrası için var idi.
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3077
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: Firebird yardım!

Mesaj gönderen sabanakman »

Hiç FireBird bilgim yoktur, bir arkadaş için FB'de benzeri sorgu önerdiğimde sorguyu çalıştırdığından bu desteği var diye kaldı aklımda :) .
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
adnansirca
Üye
Mesajlar: 135
Kayıt: 14 Kas 2005 12:24

Re: Firebird yardım!

Mesaj gönderen adnansirca »

Sanal tablo(Firebird teki adıyla saklanmış sorgu kümleri) oluşturulabilir.
IBExpert yardımıyla

Kod: Tümünü seç

create view new_view ( _fields_ )
as
select _fields_ from _table_name_
where _conditions_
şeklinde view oluşturup kullanabilirsiniz.
Bu tür sorgularda join işlemi de yapılabilir.
Kullanıcı avatarı
hacker_10-ur
Üye
Mesajlar: 27
Kayıt: 05 Oca 2008 10:05

Re: Firebird yardım!

Mesaj gönderen hacker_10-ur »

ilginiz için teşekkürler arkadaşlar ama bu komutların hepsini biliyorum zaten amaç anlık bir view oluşturmama bir değişken gibi düşünelim.
örnek olarak firebird'de şu komutu kullanabiliyoruz..

Kod: Tümünü seç

select per.adi, per.soyadi from (select * from personel ) as per 
eğer bu tip bir sql dizesini firebird çalıştırabiliyorsa benim söyledğimin de bir yolu vardır diye düşünüyorum.
DELPHI - C ++
PASCAL - TURBO C
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Re: Firebird yardım!

Mesaj gönderen aslangeri »

s.a.
öncelikle konu başlığınızı düzenlemenizi tavsiye ederim. ilerde arama yapan arkadaşlar ve forum kuralları için...
sorunuza gelince
bildiğim kadarı firebirdde yukardaki tarzda bir kullanım yok. ancak örnek tabloalar ile nasıl bir sonuç istediğini söylersen o işi yapcak bir sql muhakkak vardır. anladığım kadarı ile with ile join işlemi yapılıyor.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
hacker_10-ur
Üye
Mesajlar: 27
Kayıt: 05 Oca 2008 10:05

Re: Firebird yardım!

Mesaj gönderen hacker_10-ur »

Uyarınız için teşekkür ederim. Union ile çektiğimiz birden fazla tablo düşünün ve hepsine aynı sqlleri veya joinleri koydumuzu! bir kere tabloyu çekeceğim yere birden fazla aynı tabloyu çekmek yavaşlatır. tek sql içinde view lerle veya sp ler ile uğraşmadan daha hızlı daha uğraşsız sorgular üretilebilir. Dediğim gibi with Oracle'da bir değişken görevi görüyor. Bu mutlaka firebird de olmalı...
DELPHI - C ++
PASCAL - TURBO C
Kullanıcı avatarı
Lost Soul
Üye
Mesajlar: 1064
Kayıt: 01 Nis 2007 02:55
Konum: mekan ANKARA toprak ELAZIĞ
İletişim:

Re: Firebird yardım!

Mesaj gönderen Lost Soul »

aslangeri yazdı:s.a.

bildiğim kadarı firebirdde yukardaki tarzda bir kullanım yok.
firebird 2.0 ve üstünde bahsettiği şekilde sorgu yapılabiliyor.
1.5 sürümünde yok
Cevapla