Bireysel değerler olarak GROUP_CONCAT değerleri alma

0 Cevap php

Ben (php karıştırmasını) basit bir etiketleme sistemini uygulamaya çalışıyorum ...

Ben gerekli iplik, yazarı ve onunla ilişkili etiketleri almak için aşağıdaki sql komutunu kullanın:

$thread = select_Query("SELECT thread.title, thread.id as t_id,
                         thread.content, author.username, author.id as a_id,
                         GROUP_CONCAT(DISTINCT tags.name ORDER BY tags.name DESC SEPARATOR ',') AS tags
                         FROM thread JOIN thread_tags ON thread.id = thread_tags.thread_id
                         JOIN tags ON thread_tags.tag_id = tags.id
                         INNER JOIN author on author.id = thread.author_id
                         WHERE thread.id = $id", $link);

As you can see, I am using GROUP_CONCAT. This works fine, however when I do this, the tags all appear in one variable and I know I can use $pieces = explode(",", $thread['tags]); However is there another way of doing this? I am asking this because tags are easy to separate however if it was something more complex (e.g. something that contain the delimiter ,).

Şöyle Benim veritabanı şeması:

Konu: id, içerik, başlık, author_id

thread_tags: id, tag_id, thread_id

etiketler: id, adı

0 Cevap