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: 324
Kayıt: 30 Haz 2005 11:40
Konum: Kıbrıs
İletişim:

phpde mysql sorgusu sonuunun tekrar sorgulanması

Mesaj gönderen kazimates » 30 Ara 2014 12:50

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: 30 Eyl 2007 11:02
Konum: Ankara

Re: phpde mysql sorgusu sonuunun tekrar sorgulanması

Mesaj gönderen Battosai » 30 Ara 2014 01:54

"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 » 30 Ara 2014 08:39

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: 3044
Kayıt: 17 Nis 2006 07:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: phpde mysql sorgusu sonuunun tekrar sorgulanması

Mesaj gönderen sabanakman » 30 Ara 2014 10:05

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 02:24
Konum: DelphiTürkiye.COM

Re: phpde mysql sorgusu sonuunun tekrar sorgulanması

Mesaj gönderen hi_selamlar » 18 Mar 2015 12:39

Merhaba,

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

Cevapla