一、控制台中查询命令
默认端口号:3306
查看服务器版本: mysql –version
启动MySQL服务:net start mysql
登录数据库:mysql -u root -p
查看当前系统下的数据库:show databases;
创建数据库:create 库名;
使用数据库:use 库名;
查看数据库中的表格:show tables;
删除数据库:drop database 库名;
二、MySQL中
1.创建表:
create table 表名 (字段名1 数据类型1,字段名2 数据类型2,);create table class(name varchar(10) not null comment '班级名称',teacher varchar(255) not null comment '老师'
)comment '班级表';
2.修改表
alter table 表名 rename to 新的表名;
3.删除表
drop table 表名;
4.为列添加id主键
alter table classadd id int auto_increment primary key;
5.在列内添加数据
insert into peiqi.class (列1, 列2)values('数据1','数据2');
6.删除行
DELETE FROM 表名 WHERE 条件;delete from peiqi.class where id = 3;
三、查询表
1. 基础查询语句(SELECT)
查询所有列:使用 *
通配符选择所有字段。
SELECT * FROM employee;
查询指定列:显式指定需要返回的列。
SELECT name, salary FROM employee;
2. 列别名(Alias)
使用 '别名'
或 AS '别名'
为列定义更友好的显示名称。
SELECT name '姓名', salary '薪资' FROM employee;
3. 条件过滤(WHERE 子句)
比较运算符:>
, <
, =
, >=
, <=
, !=
等。
SELECT name FROM employee WHERE salary > 15000;
SELECT name FROM employee WHERE salary = 8000;
逻辑运算符:AND
(同时满足)、OR
(满足其一)。
SELECT name FROM employee WHERE salary > 15000 AND salary < 16000;
SELECT name FROM employee WHERE salary > 15000 OR salary < 5000;
范围查询(BETWEEN):闭区间匹配,包含边界值。
SELECT name FROM employee WHERE salary BETWEEN 15000 AND 16000;
空值判断(IS NULL / IS NOT NULL):
SELECT name FROM employee WHERE location IS NOT NULL;
4. 条件分支(CASE WHEN)
根据条件生成新列,类似编程中的 if-else
。
SELECT name, CASE WHEN salary > 10000 THEN '高工资' ELSE '低工资' END AS '工资水平'
FROM employee;
5. 模糊查询(LIKE 和通配符)
%
:匹配任意多个字符(包括零个)。
-- 包含“万”的名字(如“万某”、“张某万”)
SELECT name FROM employee WHERE name LIKE '%万%';
-- 姓“李”的名字(如“李四”)
SELECT name FROM employee WHERE name LIKE '李%';
_
:匹配单个字符。
-- 名字长度为3且以“万”结尾(如“张三万”)
SELECT name FROM employee WHERE name LIKE '_ _万';
6. 注释语法
使用 #
添加单行注释(部分数据库支持,如 MySQL)。
# 注释内容
7.关键注意事项
-
BETWEEN 的范围:包含边界值,等价于
>=
和<=
。 -
LIKE 通配符:
%
匹配任意长度字符,_
匹配单个字符。 -
NULL 判断:必须使用
IS NULL
或IS NOT NULL
,而非= NULL
。