多重多层分类数据库设计
说明:项目需要都同一个post做多重分类,如:
- 中国/北京/朝阳/望京
- 学校/大学/北京大学/文学院
- ........
项目会对同一个页面做很多多层分类(或者说一个post发布在多个分类下)如何设计数据库,以下的设计查询的时候太慢,有咩有变通的方法
--元分类表
create table tag (
tagid mediumint(8) unsigned not null auto_increment,
tag varchar(12) not null default '',
parentid mediumint(8) unsigned not null default '0',
primary key (tagid),
key (parentid),
key (tag)
) engine=myisam;
--分类与post关系表
create table post_tag (
id int(10) unsigned not null auto_increment,
tagid mediumint(8) unsigned not null default '0',
postid int(10) unsigned not null default '0',
tagline varchar(100) not null default '',
primary key (id),
key (tagid),
key (postid)
) engine=myisam;
查询 朝阳的大学 ?
SoLA.
10 years, 5 months ago