MySql数据库表操作(二)

时间:2022-10-11 07:54:58

一、增加表记录:

  

 insert [into] tab_name   (field1,field2....) values (values1,values2....) ,
(values1,values2....),
... ; insert tab_name set field=value, field=value,..... ;

二、修改记录:

update tab_name set field=value where 子句

三、删除表记录:

  

delete from  tab_name  where 子句

             清空表记录: 1  delete from tab_name

						  2  truncate tab_name   (数据量大时推荐使用)

  

四、查询表记录:

  

select  * from tab_name   : 显示所有的记录的所有字段信息

		 select [distinct] filed,filed2,.....   from tab_name

									   where 子句
group by 分组 key : 分组条件
having 子句 : 过滤
order by
limit 查询 每一个省份的平均工资
select city,avg(salary) from emp group by city; 查询 平均工资大于8000的省份的名称 select city,avg(salary) from emp group by city having avg(salary) > 8000

  

  多表查询:

  

内连接查询:

		    select * from emp inner join dep on emp.dep_id=dep.id;

			左外连接查询:

			select * from emp left join dep on emp.dep_id=dep.id;

  

五、完整性约束:

  

 主键约束: 

	       primary key    :  非空(not null )且 唯一 (unique)  

    外键约束(关联字段):
FOREIGN KEY (字段) REFERENCES dep(字段)

  

六、表关系:

  

 表与表的关系(两张表)

	 一对多

	       将关联字段设置在多的表中

		   CREATE TABLE  emp(
id INT PRIMARY KEY ,
name VARCHAR (20),
dep_id INT , FOREIGN KEY (dep_id) REFERENCES dep(id) ) 多对多 借助第三张表实现的 CREATE TABLE STUDENT2TEACHER( id INT PRIMARY KEY auto_increment, studnet_id INT ,
teacher_id INT , FOREIGN KEY (studnet_id) REFERENCES student(id),
FOREIGN KEY (teacher_id) REFERENCES teacher(id), ) 一对一 将关联字段设为Unique CREATE TABLE author(
id INT PRIMARY KEY ,
name VARCHAR (20),
authorDetial_id INT unique, FOREIGN KEY (dep_id) REFERENCES dep(id) )