MySQL加强

添加外键约束

1.外键约束格式:alter table 从表 add constraint foreign key (从表外键字段) references 主表 (主表主键)
alter table product add constraint foreign key (category_id) references category (cid);

2.声明表,在约束区域添加外键约束
create table product2(
  pid varchar(32) primary key, #主键
  pname varchar(50),
  price double(5,2),
  category_id varchar(32),    #外键,cid varchar(32)保持一致
  constraint foreign key (category_id) references category (cid)
);

多表查询

隐式内连接

语法:select * from A,B,C,... where a=b and b=c and ...;

内连接,"隐式内连接"另一种语法

关键字:inner join
语法:select * from A
      inner join B on a=b
     inner join C on b=c

左外连接

关键字:left outer join
语法:select * from A left outer join B on a=b;
解释:查询左表(A)所有的数据,右表(B)是否显示,取决于条件是否成立。如果成立显示,如果不成立显示null

右外连接
关键字:right outer join
语法:select * from A right outer join B on a=b;
解释:查询product,左表(A)是否显示,取决于条件是否成立。如果成立显示,如果不成立显示null

子查询,一条select语句的结果,作为另一条select语句语法一部分(条件,表名,查询字段)。

子查询 -- 条件的一部分

select c.cname from category c where c.cid = (select p.category_id from product p where p.pname = '盼盼');

子查询-- 表名

select c.cname from category c , (select * from product p where p.pname = '盼盼') b where c.cid = b.category_id;

猜你喜欢

转载自blog.csdn.net/lyf_ldh/article/details/81140785