0

タグ付けシステムについては、ここで受け入れられた回答で説明されているように、「Toxi」ソリューションを使用しています。「Apple」というタグが付いた質問を検索したいと思います。その質問の他のすべてのタグも返す必要がありますが、クエリは「Apple」タグのみを返します。

SELECT b.id, allTags.* , GROUP_CONCAT( t.name order by t.name SEPARATOR ',') AS allTags
FROM tagmap bt, bookmark b, tag t
WHERE bt.tag_id = t.tag_id
AND (t.name = 'Apple')
AND b.id = bt.bookmark_id
GROUP BY b.id

私に与えます:

...,'...','...','...','2013-10-07','Apple' # only the matching tag...I need all the others

以下を取得するにはどうすればよいですか?:

...,'...','...','...','2013-10-07','Apple,Tim Cook,iPhone,iPad' # the rest of the tags for this question
4

2 に答える 2

0

この条件を追加

AND (  t.name  NOT LIKE '%Apple%' )
于 2013-10-08T06:45:57.607 に答える
0

これを使って:

SELECT b.id,
       alltags.*,
       (SELECT GROUP_CONCAT(t1.name ORDER BY t1.name SEPARATOR ',')
        FROM   tag t1) AS allTags
FROM   tagmap bt,
       bookmark b,
       tag t
WHERE  bt.tag_id = t.tag_id
       AND ( t.name = 'Apple' )
       AND b.id = bt.bookmark_id
GROUP  BY b.id 
于 2013-10-08T06:48:45.967 に答える