php - 如何使用 php 和 mysql 创建标记系统?

标签 php mysql database-design tags tagging

想知道如何在 php 和 mysql 数据库中创建标签系统,我最初的想法是在存储文章的表中创建一行,命名标签,并列出用逗号分隔的标签,但我是不知道如何创建一个搜索匹配标签的查询,我不想每次有人点击标签时都查询每篇文章。谁能帮忙?

最佳答案

您描述的是文章和标签之间的多对多关系。您可能希望使用中间联结表来解决该关系。

enter image description here

现在,要查找与所选标签匹配的所有文章:

SELECT a.article_title
    FROM Tag t
        INNER JOIN Article_Tag_Xref atx
            ON t.tag_id = atx.tag_id
        INNER JOIN Article a
            ON atx.article_id = a.article_id
    WHERE t.tag_name = 'SelectedTagName'

关于php - 如何使用 php 和 mysql 创建标记系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5160307/

相关文章:

javascript - 使用 Javascript/PHP 的“另存为”框

php - 检查 id 是否存在于数组存储的数据中

mysql - MySQL 中何时使用单引号、双引号和反引号

MySQL:获取所有子类别,后代

mysql - 从当前状态查询获取总计数

php循环文件夹获取文件名和大小

php - 替换 DOM 元素时 jQuery 不起作用

mysql - 使用 JOIN 函数

mysql - 多列索引与多索引

mysql - 什么时候不使用 MySQL 或其他关系数据库?