SQL:(结构化查询语言)
查看MySQL数据库的版本号:
select version();
关于SQL语句的分类:
DQL:数据查询语言(凡是带有select关键字的都是查询语句)
select . . .
DML:数据操作语言(凡是对表当中的数据进行增删改的都是DML)
insert delete update
insert 增
delete 删
update 改
这个主要是操作表中的数据data
DDL:数据定义语言(凡是带有create、drop、alter的都是DDL)
DDL主要操作的是表的结构,不是表的数据。
create:新建,等同于增
drop:删除
alter:修改
这个增删改和DML不同,这个主要是对表的结构进行操作。
TCL:事务控制语言
commit:事务提交
rollback:事务回滚
DCL:数据控制语言
grant:授权
revoke:撤销权限
······
导入表的数据:
source 表的位置
查看表中的数据:
select * from 表名://统一执行这个SQL语句。
不看表中的数据,只看表的结构:
desc 表名
查看当前使用的是哪个数据库:
select database();
查看表格:
show database;
show tables;
终止输入:\c
简单查询:
查询一个字段:
select 字段 from 表名;
其中要注意:select和from都是关键字。字段名和表明都是表示符。
查询多个字段:使用逗号隔开。
select 字段1,字段2 from 表名;
查询所有字段:
1、把所有字段都写上;
2、可以使用*。(效率低,可读性差)
给查询的列起别名:(只是将显示的查询结果列名显示为别名原列表名不变。select语句永远都不会进行修改操作)
select 字段 as 别名 from 表名;(as可省略)
别名中的有空格用单/双引号。
列参与数学运算:
在字段名后面直接*X;
条件查询:
格式:
select . . . from . . . where 条件;
优先级与C相识。
%匹配任意多个
下划线:任意一个。(需要查找"_"的话用”/“转意)
排序:
select ename,sal from emp order by sal;//默认是升序!!!(加desc为降序)(asc指定升序)
多个字段排序:(先满足字段1的升序,在满足字段2的升序)
selece 字段1,字段2 from emp order by 字段1 asc , 字段2 asc;
根据字段的位置排序:(不建议,列顺序容易改变)
select ename,sal from emp order by 2; // 2表示第二列。第二列是sal
综合案例:
select . . . from . . . where . . .//范围 order by . . . //排序