其他分享
首页 > 其他分享> > 自关联

自关联

作者:互联网

问题:

能不能将两个表合成一张表呢?

思考:

观察两张表发现,citys表比provinces表多一个列proid,其它列的类型都是一样的

意义:

存储的都是地区信息,而且每种信息的数据量有限,没必要增加一个新表,或者将来还要存储区、乡镇信息,都增加新表的开销太大

答案:

定义表areas,结构如下

  • id
  • atitle
  • pid

说明:

创建areas表的语句如下:

create table areas(
    aid int primary key,
    atitle varchar(20),
    pid int
);
source areas.sql;
select count(*) from areas where pid is null;
select city.* from areas as city
inner join areas as province on city.pid=province.aid
where province.atitle='山西省';
select dis.* from areas as dis
inner join areas as city on city.aid=dis.pid
where city.atitle='广州市';

标签:city,pid,信息,关联,atitle,id,areas
来源: https://www.cnblogs.com/jyue/p/10491585.html