Mysql语法及部分实例 2020-6-28
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Mysql语法及部分实例 2020-6-28,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3688字,纯文字阅读大概需要6分钟。
内容图文
![Mysql语法及部分实例 2020-6-28](/upload/InfoBanner/zyjiaocheng/526/10e0ed05c9a04f41806c70298987133f.jpg)
sql通用语法:1.语句以单行或多行书写,以分号结束
2.MySql数据库不区分大小写,但是关键字建议大写
查询数据库的字符集:show create database 数据库名;
创建数据库指定字符集:show database if not exists t_studeng chararcter set gbk;
改变数据库的字符集:alter database 数据库名 chararcter set gbk;
查询所有数据库:show databases; 查询指定数据库中的所有表:show tables from 数据库名; 展示表结构:desc 表名;复制一份表到另外一张表:create table 表名 like 表名;修改表名:alter table 表名 rename to 新表名;查看表的字符集:show table 表名 ;修改表的字符集:alter table 表名 character set gbk;
修改列:alter table 表名 change 列名 新列名 参数类型;或者 alter table 表名 modify 列名 参数类型;查看表中信息:select 字段 from 表名;*表示所有字段;
删除员工表中的no字段:alter table 表名 drop no;
找出工资是2000和3000的员工:select * from 表名 where esal in(2000,3000)
select * from 表名 where esal=2000 or esal=3000;
找出工资是2500并且工号是1的员工:select * from 表名 where esal=2500 and empno=1;
删除工号为3的员工:delete from 表名 where deptno=3;
找出名字中含有李的员工:select ename from 表名 where ename like ‘%李%‘;(模糊查找)
将查询到的结果根据某个字段进行降序排列:select * from 表名 order by esal desc;
将表中的第几个字段进行排序;select * from 表名 order by 序号;
将查询到的名字转小写并且重命名:select lower(ename)as ename from 表名 where esal=2000;
将查询到的名字从第二个字符开始截取3个长度:select substr(ename,2,3)from 表名 where esal=3400;
查询出1980-08-09号入职的员工:select * from 表名 where etime=str_to_date(‘08-09-1980‘,‘%m-%d-%Y);
往学生表中插入数据:insert into t_student(ename,eage,ebirth)values(‘Jack‘,12,str_to_date(‘08-09-2000‘,‘%m-%d-%Y‘);(前提是表中ebirth字段是date类型)
查询员工的入职日期,以‘08-09-2000’的格式打印:select date_formate(etime,‘%m-%d-%Y) from 表名
求薪水字段的平均值:select avg(esal) from 表名;(多行处理函数还有:max,min,count,sum...)
将查询的结果去重:select distinct(ejob) from 表名
求每个工作岗位的最高薪水:select max(esal) from 表名 group by ejob;
在员工表和部门表中取出员工姓名和对应的部门名:select e.ename,d.dname from emp e,dept d where e.deptno=d.deptno;(92语法:内连接中的等值连接)
select e.ename,d.dname from emp e join dept d on e.deptno=d.deptno;(99语法结构更加清晰)
查找员工的工资等级,打印员工姓名和对应的工资等级:select e.ename,s.grade from emp e join salgrade s on e.sal between s.losal and s.hisal; (99语法,内连接中的非等值连接)
查找员工的工资等级,打印员工姓名和对应的工资等级,并且打印出所有的工资等级:
select e.ename,s.grade from emp e right join salgrade s on e.sal between s.losal and s.hisal;(99语法,外连接中的右连接)
select e.ename,s.grade from emp e left join salgrade s on e.sal between s.losal and s.hisal;(99语法,外连接中的左连接)
找出薪水比平均薪水高的员工:select ename from emp where sal>(select avg(sal) from emp);(子查询:select嵌套select)
找出前五名员工:select ename from emp limit 0,5;
select ename,grade from emp,salgrade where sal between losal and hisal union select ename,grade from emp,salgrade where sal between losal and hisal;(union合并子查询)
eid int(22) primary key auto_increament;(主键自增)
constraint t_student_class foreign key(classno) references t_class(cno)
员工姓名和对应的工资等级:select e.ename,s.grade from emp e join salgrade s on e.sal between s.losal and s.hisal;
开启事务:start transaction;
结束事务:成功->commit; 失败:rollback;(回滚,将DML语句全部清空)
设置自动提交关闭:set autocommit=off;
Mysql语法及部分实例 2020-6-28
标签:重命名 大小写 插入 学生 字段 ons sql数据库 union mysql
本文系统来源:https://www.cnblogs.com/1877chl/p/13204231.html
内容总结
以上是互联网集市为您收集整理的Mysql语法及部分实例 2020-6-28全部内容,希望文章能够帮你解决Mysql语法及部分实例 2020-6-28所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。