Merhaba arkadaslar,
Yaptim iste bir yerde takildim istedim sekilde cikti alamiyorum.
Simdi elimde iki sql tablosu istedigim bunlarin ayni anda sorgulatip gerikli veriler esit ise uyari mesaji yazdiricam.
Kullanicilar : id | adi | tarih | kullanimsuresi
islemler : id | kid | tarih | ksuresi
tablolar bu sekil. ilk Kullanicilarda bulunan kullanicisuresi nde süre yada veri girilecek mesela 20 diyelim, ikinci islemler tablosunda ksuresi her sisteme girdiginde +1 ekliyor bunu alt alta yapiyor yeni bir id olusturarak. ksuresi nin toplami ile kullanicisuresi esitlenince süresi doldu diye bilgi yazdirmak istiyorum.
Bu islemi kullanici panelinde yaptiriyorum ama benim istedigim süresi bitenler diye bir sayfa olusturup buraya girildiginde süresi biten tüm kullanicilari listeletmek.
Bu konuda yardimci olabilirmisiniz?
SUM(kullanimsuresi) falan denedim ama sonuc alamadim.
yada yanlis birsey yapiyorum.
Tekrar not olarak yaziyorum bu islem kullanici panelinde degil normal suresibitenler.php sayfasinda tüm süresi bitenlerin siralanmasi icin yapilacak.
giden bir id üzerinde islem olmuyor yani. sabit sayfada.
Simdiden tesekkürler.
Php Birden Fazla Tablo Sorgu
4
●239
- 20-09-2019, 13:28:27Hocam şuan dışardayımda size genel mantığı anlatayım kullanıcıları for ile tabloya yazdırmayı biliyorsunuzdur bunu yazarken yazdırmadan önce for dan gelen ilk tablo 2 için 2 veriyi çekin kullanıcılardan id ve süreyi çekip birer değişkene atın daha sonra id yi işlemler tablosunda kid olarak sorgulayın ordan işlem suresini if de sorgulayın ilk tablodan gelen veri ile aynı mı diye aynı ise istediğiniz işlemi yaptırın
Tabi bu zor yol join ile kullanıcılar tablosunun id si ile işlemlerdeki kid yi eşleştirip tek sorguda çekebilirsiniz
Edit : "SELECT kullanicilar.adi
FROM kullanicilar
INNER JOIN islemler ON kullanicilar.id=islemler.kid WHERE kullanicilar.kullanimsuresi=islemler.ksuresi" Edit 2 :Yanlış sorgu müsait olunca düzgününü atarım - 20-09-2019, 13:49:31Tesekürler,
ben denemeler yapmaya devam ediyorum, dediginiz mantikta islem deniyeyim.
Normal olarak su sekil tablolardaki sureleri cektiriyorum. Bundan sonrasi sorun oldu bende.
SELECT K.kullanimsuresi, I.ksuresi FROM Kullanicilar K, islemler I WHERE K.id= I.kid
Bu sekilde iki tabloda islem yapan kullanicilari listeletiyorum. bundan sonra her kullanicinin süresini toplatip ana sure ile esitligini sorgulatamadim.
- 20-09-2019, 23:41:01Kullanicilar : id | adi | tarih | kullanimsuresi
islemler : id | kid | tarih | ksuresi
Şöyle bi sql olabilir;
SELECT * FROM Kullanicilar INNER JOIN islemler ON kullanicilar.id=islemler.kid WHERE kullanicilar.kullanimsuresi=islemler.ksuresi GROUP BY kullanicilar.id ORDER BY id DESC - 21-09-2019, 09:20:26inanin bunuda defalarca denedim ama bos sayfa geliyor ozaman veri cekmiyor.
baska bir algoritma bulmam gerekecek sanirim ne yaptiysam verileri dogru sekilde hesaplatamadim.
SELECT * FROM Kullanicilar INNER JOIN islemler ON kullanicilar.id=islemler.kid WHERE kullanicilar.kullanimsuresi=islemler.ksuresi GROUP BY kullanicilar.id ORDER BY id DESC
bir sekilde islemler de bulunan kid sine ait ksuresi SUM ile hesaplanmali ama nasil olacak onu bilemedim.
Tamam arkadaslar konuyu cözdüm. yardim da bulunmak istiyen tüm arkadaslara tesekür ederim.
SELECT * FROM islemler LEFT JOIN kullanicilar ON FIND_IN_SET(kullanicilar.kid, islemler.id); GROUP BY kullanicilar.kidbu algoritma ile istedigimi halettim.