ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

mysql语法

2020-01-17 21:03:16  阅读:281  来源: 互联网

标签:sage 查询 语法 student mysql sbirthday where select


mysql知识点

一、基本概念

1、计算机:一种电子设备,能够进行数值、逻辑和储存记忆功能。
2、数据:凡是能被计算机识别的一切功能(信息)
3、数据库:储存数据的仓库
优点:操作速度快 操作方便
4、数据库的种类
关系型数据库
特点:用表储存数据 以行为单位操作数据(mysql、sqlServer、Oracle(甲骨文))
非关系型数据库
特点:以列为单位储存数据,以节点为单位(MongoDB)

二、基本操作

1、安装(serverOnly,密码建议设置root)
注意事项:重新安装时候,必须要删除c盘Program Data隐藏文件夹中的mysql文件夹才能重新安装
2、下载
3、登陆 mysql -u root -p

三、基本操作

常见的约束
not null:非空约束
unique:唯一约束
primary key:主键约束
注意事项:
主键约束并不是简单的非空和唯一的组合,他更重要的意义是唯一标识一行数据
一张表中最多只有一个主键

格式:insert into 字段名 values 值
代码:insert into student values('s001','张三','男',12,'1999-3-23');

格式:delete from 表名 where 条件;
代码:delete from student where sid=’s002’;

格式:update 表名 set 条件 where 条件;
代码:update student set sname=’zhangsan’ where sid=’s004’;


(一)、条件查询
1、范围查询 and or between...and... in
例:
查询年龄在20~30岁之间的学生信息 and
select * from student where sage>=20 and sage<=30;
查询未成年人或超龄学生的信息 or
select * from student where sage<=15 or sage>=30;
另一种方式查询20~30之间 between...and...
select * from student where sage between 20 and 30;
查询1998年出生的学生信息
select * from student where sbirthday between '1998-1-1' and '1998-12-31';
select * from student where sbirthday between '1998-1-1' and '1998-12-31' order by sid;(默认:升序)
select * from student where sbirthday between '1998-1-1' and '1998-12-31' order by sid desc(降序);
查询学号为s002,s003,s004的学生信息 in
select * from student where sid in ('s002','s003','s005');

(二)、模糊查询(like)
1、格式
2、操作符:
%:任意个字符
_:一个任意字符
例:
查询姓名的最后一个字符是xx的学生信息
select * from student where sname like '%八';
查询姓名的第三个字符是xx的学生信息
select * from student where sname like '__看%';
查询姓名的倒数第二个字符是xx的学生信息
select * from student where sname like '%三_';
(三)、分组查询(group by)方便统计
1、格式
2、聚合函数(统计)
sum(总和数) count(个数) avg(平均值)max(最大值)min(最小值)
例:
统计男女各多少人
select ssex ,count(*) from student group by ssex;
统计男女的 最大年龄 最小年龄 总年龄 平均年龄,要求取别名
select ssex as '性别',max(sage) as '最大年龄', min(sage) as '最小年龄', sum(sage) as '总年龄',avg(sage) as '平均年龄' from student group by ssex;
(四)、子查询
1、概念:在查询中又出现了一个完全独立的查询
例:
查询根XX一样大的学生
select * from student where sage=( select sage from student where sname='张三五');
查询根xx同月出生的学生信息
select * from student where YEAR(sbirthday)=(select YEAR(sbirthday) from student where
sname='张五') and MONTH(sbirthday)=( select MONTH(sbirthday) from student where sname='张五');
查询根xx同一天出生的学生信息
select * from student where YEAR(sbirthday)=(select YEAR(sbirthday) from student where
sname='张五') and MONTH(sbirthday)=( select MONTH(sbirthday) from student where sname='张五') and DAY(sbirthday)=(select DAY(sbirthday) from student where sname='张五');
(五)、多表查询
语法:select 字段1,字段2...from 表1,表2...[where 条件]
例:
查询人员和所有部门所有的信息
select * from person,dept;
[注意事项:]如果不加条件进行条件,则会出现以下效果“笛卡尔乘积” 公式:A表的数据*B表的数据=笛卡尔乘积

标签:sage,查询,语法,student,mysql,sbirthday,where,select
来源: https://www.cnblogs.com/2393920029-qq/p/12207459.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有