2 Tabloları birleştirme Sorunu

4 Cevap php

Ben 2 tablolar birlikte katılmak istiyorum ama o iş için alınamıyor.

These are the tables:
threads: id, title
posts: thread_id, message

$sql = mysql_query("SELECT threads.id, threads.title
                    FROM threads
                    JOIN posts ON posts.thread_id = threads.id
                    WHERE threads.id = ".intval($_GET['id']));


while ($post = mysql_fetch_assoc($sql))
{
    echo $post['title'];
    echo $post['message'];

}

Bu başlık değil, mesajı alır. Ben parçacığı atanmış bir tane var.

4 Cevap

Sen posts.message seçerek değil. Bu için SQL değiştirme ve işe yarayabilir.

SELECT threads.id, threads.title, posts.message
FROM threads
JOIN posts ON posts.thread_id = threads.id
WHERE threads.id = $id

Eşleşen bir thread_id ile mesaj var $id? Değilse, o boş bir sonuç kümesi oluşturmak istiyorsunuz, çünkü.

Eğer PHP olmadan, MySQL çalışması yapabilir miyim? Ben sorguları gidermek için phpMyAdmin güveniyor. Ben daha doğrudan MySQL almak sonra, phpMyAdmin özelliği bir "PHP için ihracat SQL" vardır.

Eğer mesajları almak istiyorsanız bunu başka bir şekilde yapmak isteyebilirsiniz

SELECT threads.id, threads.title, posts.message
FROM posts
JOIN threads ON threads.id = posts.thread_id
WHERE posts.thread_id = $id