php - 关于博客文章、分类、标签的mysql查询问题
黄舟
黄舟 2017-04-11 10:09:16
0
3
243

最近在做一个mysql+nodeJS的博客,只是用来练手,由于PHP不会,所以用node作为后台语音开发
遇到的查询问题是
文章和分类是一对一的
文章和标签是一对多的
请问这个mysql怎么写,在下是前端,会点简单的mysql,所以就当学习这个吧,最好能丢出sql语句我琢磨琢磨

表结构如下图

图片来源于图片来源,我就没有去做,只是合并了下

跪求各位的文章详情查询的sql语句

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全員に返信 (3)
小葫芦

用关联查询,或者in子查询
首先你要提供你的查询需求,要查什么,查询条件是什么,查询结果是什么。讲清楚场景才能写出SQL来

いいねを押す+0
    洪涛

    我试着写了一下,效率可能低了一点,不过功能应该是对的

    CREATE TABLE `articles` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` varchar(50) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ; CREATE TABLE `tags` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ; CREATE TABLE `tag_links` ( `aid` int(11) NOT NULL, `tid` int(11) NOT NULL, PRIMARY KEY (`aid`,`tid`) ); -- insert demo data INSERT INTO `articles` (`id`,`title`) VALUES (1,'xxx'),(2,'a'),(3,'b'); INSERT INTO `tags` (`id`,`name`) VALUES (1,'php'),(2,'java'),(3,'sql'); INSERT INTO `tag_links` (`aid`,`tid`) VALUES (1,2),(1,3); INSERT INTO `tag_links` (`aid`,`tid`) VALUES (2,1),(2,3); -- query statement SELECT a.title as 'title', ( SELECT GROUP_CONCAT(t.name,' ') FROM `tags` t LEFT JOIN `tag_links` tl ON t.id=tl.tid WHERE tl.aid=a.id ) as 'tags' FROM `articles` a;
    いいねを押す+0
      小葫芦

      先查出文章记录,在查对应的标签关联,然后查找标签关联对应标签表的记录

      いいねを押す+0
        最新のダウンロード
        詳細>
        ウェブエフェクト
        公式サイト
        サイト素材
        フロントエンドテンプレート
        私たちについて 免責事項 Sitemap
        PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!