İKİ TABLOYU NASIL BİRLEŞTİREBİLİRİM?
Merhabalar. categories ve posts adlı iki tablom varç
istiyorum ki posts daki verime eklenen kategory id yi categories tablosundan buldurayım ve hem posts daki id nin hemde eklemiş olduğum kategori id nin bilgilerini alayım.
Böyle bir innerjoin kodu bulunmakta mıdır?
Ayrıca kendi sistemimde şöyle bir kod kullanıyorum fakat blog/ altında konularımı listelerken kategorisini yanlış çekiyor
Konularımı sakladığım tablom: https://prnt.sc/PEqSq2mM5NKM
Kategorilerimi tuttuğum tablom: https://prnt.sc/WK7n8kAGoUWD
Kodum:
<?php
if (!isset($_GET['url']) || empty($_GET['url'])){
header('Location:404.php');
}
$datas = $db->prepare('SELECT * FROM posts WHERE url = ?');
$datas->execute([
$_GET['url']
]);
$data = $datas->fetch(PDO::FETCH_ASSOC);
if (!$data){
header('Location:404.php');
exit;
}
?>
<?php
$categories = $db->query('SELECT
categories.*,
COUNT(`posts`.`id`) AS `totalPosts`
FROM `categories`
LEFT JOIN `posts` ON `posts`.`category_id` = `categories`.`id`
ORDER BY `categories`.`id` DESC')->fetchAll(PDO::FETCH_ASSOC);?>
<?php foreach($categories as $category): ?>
<div class="container mt-4">
<div class="row">
<div class="col-md-12">
<div class="card mb-3">
<div class="card-header">
<i class="bi bi-folder"></i> Kategori: <a href="<?= '../blog/category/' . seo($category['category_url']) ?>"><?=$category['category_name']?></a>
<a class="Date"><?=$data['date']?> <i class="bi bi-clock"></i></a>
</div>
<div class="card-body">
<?php $imageURL = '../admin/uploads/'.$data["image"]; ?>
<div class="mainİmage"><img src="<?php echo $imageURL; ?>" alt="" /></div><br>
<?=htmlspecialchars_decode($data['content'])?>
</div>
</div>
</div>
</div>
<?php endforeach; ?>
bu sayfadan JOIN tiplerine bakabilirsin, sayfanın devamında tüm tipler için örneklerde var.
Bir kaç youtube videosu da bakarsan mantığını kavrarsın.
Tayfun erbilenin youtube videosu : https://m.youtube.com/watch?v=TqmmpDQniL0