学习MySQL主要还是学习通用的SQL语句,那么SQL语句包括增删改查,SQL语句怎么分类呢?
DQL(数据查询语言): 查询语句,凡是select语句都是DQL。
DML(数据操作语言):insert delete update,对表当中的数据进行增删改。
DDL(数据定义语言):create drop alter,对表结构的增删改。
TCL(事务控制语言):commit提交事务,rollback回滚事务。(TCL中的T是Transaction)
DCL(数据控制语言): grant授权、revoke撤销权限等。
导入数据(后期大家练习的时候使用这个演示的数据)
第一步:登录mysql数据库管理系统
dos命令窗口:
mysql -uroot -p333
第二步:查看有哪些数据库
第三步:创建属于我们自己的数据库
create database bjpowernode; (这个不是SQL语句,属于MySQL的命令。)
第四步:使用bjpowernode数据
use bjpowernode; (这个不是SQL语句,属于MySQL的命令。)
第五步:查看当前使用的数据库中有哪些表?
show tables; (这个不是SQL语句,属于MySQL的命令。)
第六步:初始化数据
mysql> source D:\course\05-MySQL\resources\bjpowernode.sql
常用命令
查看msyql版本
C:\Users\Administrator>mysql --version
mysql Ver 14.14 Distrib 5.5.36, for Win32 (x86)
创建数据库
create database bjpowernode;
use bjpowernode;
查询当前使用的数据库
select database();
查询数据库版本也可以使用
select version();
终止一条语句
如果想要终止一条正在编写的语句,可键入\c。
退出mysql
可使用\q、QUIT或EXIT:
如:
mysql> \q (ctrl+c)
简单的查询语句(DQL)
语法格式:
select 字段名1,字段名2,字段名3,.... from 表名;
提示:
1、任何一条sql语句以“;”结尾。
2、sql语句不区分大小写。
查询员工的年薪?(字段可以参与数学运算。)
select ename,sal * 12 from emp;
给查询结果的列重命名?
select ename,sal * 12 as yearsal from emp;
as关键字可以省略
别名中有中文?
select ename,sal * 12 as 年薪 from emp; // 错误
select ename,sal * 12 as '年薪' from emp;
注意:标准sql语句中要求字符串使用单引号括起来。虽然mysql支持双引号,尽量别用。
查询所有字段?
select * from emp; // 实际开发中不建议使用*,效率较低
条件查询
语法格式:
select
字段,字段...
from
表名
where
条件;
执行顺序:先from,然后where,最后select
between...and...是闭区间, between and在使用的时候必须左小右大。
between and除了可以使用在数字方面之外,还可以使用在字符串方面。左闭右开
在数据库当中NULL不是一个值,代表什么也没有,为空。
空不是一个值,不能用等号衡量。
必须使用 is null或者is not null