phpde mysql sorgusu sonuunun tekrar sorgulanması

Diğer veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
kazimates
Üye
Mesajlar: 332
Kayıt: 01 Tem 2005 12:40
Konum: Kıbrıs
İletişim:

phpde mysql sorgusu sonuunun tekrar sorgulanması

Mesaj gönderen kazimates »

merhabalar,

php üzerinde mysql serverden öncelikle birden fazla tablodan bir sql cümlesiyle verileri çekip sonrasında bu sql cümlesinin getirdiği sonuçların içerisinden başka bir sql cümlesiyle tekrar birtakım verileri çekmem lazım. bunun yöntemi nedir? örnek verebilirmisiniz.
Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 01 Eki 2007 12:02
Konum: Ankara

Re: phpde mysql sorgusu sonuunun tekrar sorgulanması

Mesaj gönderen Battosai »

"sonrasında bu sql cümlesinin getirdiği sonuçların içerisinden başka bir sql cümlesiyle tekrar birtakım verileri çekmem lazım" Bu cümlede yazar neyi anlatmak istemiştir ?
Kullanıcı avatarı
warder
Üye
Mesajlar: 255
Kayıt: 10 Mar 2004 04:59

Re: phpde mysql sorgusu sonuunun tekrar sorgulanması

Mesaj gönderen warder »

sql cümlenizle view oluşturup istediğiniz gibi yeni sql cümleleri ile sorgulayabilirsiniz.
... Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!
Mustafa Kemal Atatürk...
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: phpde mysql sorgusu sonuunun tekrar sorgulanması

Mesaj gönderen sabanakman »

Bir de alt sorgu yöntemi kullanılabilir. MySQL pek bilmem ama alt sorgu kavramı veri tabanlarının en temel özelliğidir. SQL Server açısından bir kaç kuralı vardır. Alt sorguya bir isim takmalı ve bu alt sorgularda hesaplanan alanlar isimsiz bırakılmamalıdır. Mesela bir müşteri tablosuna ait hareket tablosundan borç ve alacakları hesapladıktan sonra toplam borç bakiyesi 1000'i geçen kayıtları listelemek için aşağıdaki gibi bir yapı kullanılabilir.

Kod: Tümünü seç

select Mus.ID, Mus.Unvan, Toplamlar.ToplamBorc, Toplamlar.ToplamAlacak from Musteriler as Mus
left join
  (select  MUS_ID, sum(Borc)  as ToplamBorc, sum(Alacak) as ToplamAlacak from Hareket
   where Tarih>'01.01.2014'
   group by MUS_ID
   having sum(Borc)>0 or sum(Alacak)>0) /*1000'i aşan bakiye kıyaslaması burada olursa performans açısından daha iyi olacaktır*/
as Toplamlar on Toplamlar.MUS_ID=Mus.ID
where (coalesce(Toplamlar.TopamBorc,0)-coalesce(Toplamlar.ToplamAlacak,0))>1000
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
hi_selamlar
Üye
Mesajlar: 523
Kayıt: 05 May 2005 03:24
Konum: DelphiTürkiye.COM

Re: phpde mysql sorgusu sonuunun tekrar sorgulanması

Mesaj gönderen hi_selamlar »

Merhaba,

1) View kullanabilirsiniz.
2) Geçici tabloya verileri aktarım, daha sonra yeniden sorgulayabilirsiniz.
Herkes cahildir, bazi konularda.
Cevapla