v2.5.2
Giriş yap

PHP inner join hakkında

hakan16
766 defa görüntülendi

Merhaba 3 adet tablom var hesaplar, gelir ve gider. Örnek olarak kullanıcı id'si 1 olanların hangi hesaplarının olduğunu ve o hesaplara ait gelir ve gider tablosundaki verilerini göstermek istiyorum. Hesaplar tablosunda o kullanıcıya ait hesaplar var yani toplam_para=sum(gelir)-sum(gider) yapmak istiyorum.

<?php
    <?php 
           
                $gelir=$db->prepare("select hesap_id, hesap_adi, toplam_para, gelir_tutari, gider_tutari from  hesaplar inner join gelir on hesaplar.kullanici_id=gelir.kullanici_id 
                                                             inner join gider on hesaplar.kullanici_id=gider.kullanici_id where hesaplar.kullanici_id=$id  GROUP BY hesaplar.hesap_adi
                                                                                                                                                                  ");
                    $gelir->execute();
                    $gelecek=$gelir->fetchAll();
                    print_r($gelecek);
                    foreach($gelecek as $hesaps){  ?>
                     
                        <li class="hesap_listesi_hesaplar_hesap">
              <a href="gecmis.php">
                <span class="hesap_title"><?php echo ucfirst_tr($hesaps['hesap_adi']); ?></span>
                <span class="hesap_bakiye"><?php echo number_format($hesaps['toplam_para'], 0, ",",".")." ₺";?></span>
              </a>
             </li>
                    <?php }  ?>
?>
aydinkeskin
1385 gün önce
$sql = "SELECT 
          a.adi as AAdi,
          a.id as AID,
          a.istediğin veriler,
          b.istediğin veriler,
          c.istediğin veriler
        FROM 
          a
        INNER JOIN b ON a.id = b.id
        INNER JOIN c ON a.id = c.id
        WHERE a.id =?";
    $sql->execute([$gelenAIDDEĞERİ]);
    $row = $sql->fetch(2); // 2 PDO::FETCH_ASSOC demek oluyor
    
    // a.id değeri ile eşleşen b.id ve c.id tablolarından SELECT den sonra yazdığın her veriyi çekebilirsin
    
          



söyle bakalım senin siparisler tablon var orda userID urunID tutuyorsun

siparislere gelen userID ve urunlere giden urunID sütünlarını users tablon var diyelim

users.id = siparisler.userID
urun.id = siparisler.urunID

şeklinde karşılaştırıp oan denk gelen bütün ve tek olarak siparişi çekebilirsin