求一条三表关联查询的MySQL语句


各位,求一条SQL语句,我自己弄了半天弄出来的总是不对,结果都有重复项,麻烦帮我看下谢谢啊。

三个表,content、relationship、meta,

content是内容,主键cid;
meta表存储分类的相应名称、类型等,主键mid;
relationship是content和meta之间的关系,两个键,cid和对应的mid。

求个SQL就是给一个分类名称,比方说default,查出相关的content内容和meta的内容放入数组。
PS.有点像Wordpress里面的数据库结构,找了半天没找到WP是怎么实现的……弱啊

我试着写了几个,但是都有点不对,JOIN没学好,麻烦大家帮助下,谢谢。

sql mysql php

都没我这么衰 10 years, 6 months ago

搞定了。

SELECT * 
FROM hycms_metas AS m
RIGHT JOIN hycms_relationships AS r ON m.mid = r.mid
JOIN hycms_contents AS c ON r.cid = c.cid
WHERE m.slug =  'default'
AND m.mid IS NOT NULL
Plics♂C answered 10 years, 6 months ago

Your Answer