您的位置:首页 > 编程语言 > Java开发

零基础学习java日记第二十一天 MySQL查询 聚合函数 备份与恢复数据库

2019-03-26 22:36 876 查看

           今天主要讲了SQL语句中的查询,外键约束

           查询的基本语法是select  a  from  b,即从b中查询并显示a。加distinct关键词表示剔除列中的重复值。查询语句里有where子句,它的功能主要是对所有记录进行筛选、过滤 。其中包含以下运算符,主要重点是模糊查询。

           排序查询语法:order by 排序的列  asc;升序排列。 order  by  排序的列  desc;降序排序。

           分组查询使用关键词group by。列如:select * from emp group by dept;将emp表中信息按dept分组。分组之前用聚合函数表示对表内所有数据进行统计计算,分组之后用聚合函数表示对每个组内的所有记录进行统计计算。

           聚合函数查询:max()和min() -- 返回某列的最大最小值。count() --返回某列的行数。sum() -- 返回某列之和。avg() -- 返回某列的平均值。注意:count(*)表示统计记录行数;多个聚合函数可以一起查询;聚合函数不能用在where子句中;在没有分组的情况下,聚合函数不能和其他普通字段一起查询。

           其他函数,数值函数:ceil(数值)-- 向上取整。 floor(数值) -- 向下取整。round(数值) -- 向下取整。rand(数值) -- 随机数。日期函数:curdate() -- 返回当前日期(年月日)。curtime() -- 返回当前时间(时分秒)。now() -- 返回当前日期+时间(年月日 时分秒)。date_add()、date_sub()-- 增加、减少日期。year()、month()、day()、hour()、minute()、second()-- 分别用来获取日期中的年、月、日、时、分、秒。

          外键是指唯一标识其他表中的一条记录,用来通知数据库两张表列与列之间的对应关系,并让数据库维护这种关系的键。添加外键的语法:foreign key(a) references B(c)指将a列设置为B表中c列的外键。表的关系有一对多,一对一,多对多。当处于一对多的两张表时,可以在多的一方添加列,保存一的一方的主键,从而保存两张表的关系。当处于一对一的两张表时,可以在任意一张表中添加列保存另一张表的主键,从而保存两张表的关系。当处于多对多的两张表时,就需要添加第三方表格来专门保存两张表的关系。

          关联查询:将两张或以上的表,按照指定条件查询,将结果显示在一张表中。语法:select ...  from A,B...where...,即在A,B表中查找数据并用where筛选出正确数据。当不用where语句筛选会出现很多错误数据(笛卡尔数据)。

          外联查询分为左外联查询和右外联查询。左外联查询语法:select ... from  A  left  join B  on  ... ,显示左侧表中的数据,如果右侧表中没有对应数据,就显示为null。右外联查询语法:select ... from  A right  join B  on  ... ,显示右侧表中的数据,如果左侧表中没有对应数据,就显示为null。

          子查询就是将一个查询得到的结果,作为另一个查询条件,语法:select ... from ...  where ...(select ... from ...)。

          备份数据库和恢复数据库方法:打开dos窗口,输入mysqldump  -u用户名  -p 数据库名称 > 存放数据文件的位置,回车,输入密码,如果没有提示错误则备份成功,备份数据库只是备份数据库中的表,不会备份数据库本身。在恢复数据库之前,先创建好要恢复的库,然后打开dos窗口,输入mysql  -u用户名  -p  数据库名称  < 存放数据文件位置,回车,输入密码,如果没有提示错误,则恢复成功。

 

 

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: