连表查询:join

from 表名1  left  join 表名2  on 连接条件;

连接条件 : 表名1.字段名=表名2.字段名     my_student.id=my_class.id

字段名指:字段名就是表中的列名;例如  id ,name  ,sex,  age

给表取别名: 表名  as  别名     (没有as关键字也可以)

select stu_name,age,sex,class_name from my_student left join my_class on my_student.c_id = my_class.id;

 

select * from my_student as s left join my_class as c on s.c_id = c.id;

 

select stu_name,age,sex,class_name,my_calss.id as c_id,my_student.id as s_id from my_student as s left join my_class as c on s.c_id = c.id;

 

3nf 表的3范式   1个表只能存一个对象

 

 

后面给表起别名,在前面就可以使用,无顺序问题,无需再前面起名,会报错;

前面给id起别名是因为2个表的id无法区分谁是谁,所以起别名来区分2个id分别是哪个表的id。查询出来的字段名会是起的别名。

连表查询:join

from 表名1  left  join 表名2  on 连接条件;

连接条件 : 表名1.字段名=表名2.字段名     my_student.id=my_class.id

字段名指:字段名就是表中的列名;例如  id ,name  ,sex,  age

给表取别名: 表名  as  别名     (没有as关键字也可以)

select stu_name,age,sex,class_name from my_student left join my_class on my_student.c_id = my_class.id;

 

select * from my_student as s left join my_class as c on s.c_id = c.id;

 

select stu_name,age,sex,class_name,my_calss.id as c_id,my_student.id as s_id from my_student as s left join my_class as c on s.c_id = c.id;

 

3nf 表的3范式   1个表只能存一个对象

 

 

后面给表起别名,在前面就可以使用,无顺序问题,无需再前面起名,会报错;

前面给id起别名是因为2个表的id无法区分谁是谁,所以起别名来区分2个id分别是哪个表的id。查询出来的字段名会是起的别名。