MySQL的知识点(2)
记录MySQL数据库的常用语句集合
1、数据库的操作语句
net start mysql # 启动MySQL数据库
mysql -uroot -proot # 在命令行模式下进去MySQL命令窗体
# 列出数据库
show databases;
# 选择数据库
use [[datebaseName]];
# 列出表格
show tables;
# 显示表格列的属性
show columns from [[tableName]];
2、检索数据
使用show columns from l_user
或者DESC l_user
将检索数据表l_user
的属性显示如下:
+-----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+----------------+
| id | bigint(32) | NO | PRI | NULL | auto_increment |
| code | varchar(32) | NO | MUL | NULL | |
| username | varchar(32) | NO | MUL | NULL | |
| password | varchar(32) | NO | | NULL | |
| userState | int(1) | NO | | NULL | |
+-----------+-------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)
2.1 检索列
# 检索username的列并将显示的列的列头为用户名
SELECT username 用户名
FROM l_user;
# 检索多个列
SELECT code,username FROM l_user;
# 检索所有列
SELECT * FROM l_user;
2.2 检索不同行
DISTINCT
用于去重信息
# 用于去掉重复用户名
SELECT DISTINCT username FROM l_user;
2.3 限定检索——分页查询
关键词:
LIMIT index,pageNum
一般放在SQL语句的最后,用于对数据集的行数进行约束,可以有两个或一个参数,两个的话,则是从index开始计算的pageNum个数据,一个的话,就是前pageNum行。(index是偏移量,默认为0时可以不写,pageNum是展示多少条数据);
LIMIT pageNum offset index
同上。
数据库是从0开始计数的
-- 只检索数据表的前五行
SELECT code FROM l_user LIMIT 5;
-- 检索6-10的数据
SELECT code FROM l_user LIMIT 5,5;
-- 限定表名的列
SELECT u.code 用户id,s.code 座位id
FROM l_user u,seat s LIMIT 10;
-- 检索6-10的数据
select * from l_user limit 5 offset 5;
2.4 排序检索
ORDER by [[属性]]
以该属性的数据进行升序
升序:从小到大;降序:从大到小
MySQL的降序需要使用DESC(DESCREASE)
加以说明,默认为升序。
# 以username的数据进行升序
SELECT username,code FROM l_user ORDER BY username;
# 先username再code进行升序
SELECT username,code,userState FROM l_user ORDER BY username,code;
# 先username降序再code进行升序
SELECT username,code,userState FROM l_user ORDER BY username DESC,code;
3、过滤数据 —— WHERE
WHERE子句操作符
= 等于 != 不等于 < 小于 > 大于 <= 小于等于 >= 大于等于
BETWEEN ... AND ... 在...和...的范围内
IN(start , end) 在[start,end]范围内,可在前面加NOT 取反
[[属性]] is NULL 如果列值为NULL则返回true
[[属性]] is NOT NULL 如果列值不为NULL则返回true
AND 和 OR 或
MySQL优先处理AND, 后处理OR,要先处理OR要先加()
以下是例子:
# 检查单个值
SELECT username,code FROM l_user WHERE username = '张三';
SELECT username,code FROM l_user WHERE username != '张三';
# 检查id在5-10的数值
SELECT username,code,id FROM l_user WHERE id BETWEEN 5 AND 10;
SQL语句的规范语法顺序
SELECT
FROM
WHERE
GROUP BY
HAVING
ORDER BY
LIMIT