1. 登录mysql
$ mysql -u root -p
root
2. 显示所有数据库
SHOW DATABASES;
3. 创建数据库
CREATE DATABASE test_db; -- 创建数据库test_db
4. 使用数据库
USE test_db;
5. 显示数据库中所有的表table
SHOW TABLES;
6. 数据库的行和列
6.1 列
表是由一个或多个列组成的。
每个列都有相应的数据类型。
6.2 行
表中的一条记录。行=记录
7. 主键
表中每一行都应该有一列(或几列)可以唯一标识自己。
虽然不是必须要主键,但是还是建议定义主键。
表中任意列都可以作为主键,只要满足一下条件:
- 任意两行不具有相同的主键值(唯一性)
- 每一行都必须具有一个主键值(主键列不允许控制NULL)
- 主键列中的值不允许修改和更新
- 主键值不能重用(如果某行从表中删除,它的主键不能赋给以后的新行)
注意,可以使用多列作为主键。在使用多列时,以上规则适用于所有的列。所有列值得组合必须是唯一的(主键列中的单个列的值可以不唯一,但是这些列的组合必须唯一)
8. 检索数据
8.1 检索单个列
SELECT username FROM user; -- 从表user中检索username列
注意多条SQL语句以分号;
分隔。建议在单挑SQL语句后总是写上分号。
SQL不区分大小写,但是建议对于关键字使用大写,其他如列名表名使用小写。
8.2 检索多个列
列名用逗号隔开
SELECT username, password FROM user; -- 从表user中检索username和password列
8.3 检索所有列
使用通配符*标识所有的列
SELECT * FROM user; -- 从表user中检索所有列
8.4 检索不同的值DISTINCE
使用distinct只返回不同的值,需要放在列名前面
SELECT DISTINCT username FROM user;
注意,DISTINCT不能用于部分列,而是用于所有的列。即为DISTINCT返回的是多个列的唯一组合。
8.5 限制结果
MYSQL通过LIMIT来限制返回结果
SELECT username FROM user LIMIT 3,4; -- 从第3条结果开始返回四条结果 SELECT username FROM user LIMIT 4 OFFSET 3; -- 与上面的结果相同。需要注意limit后面的数字与上面是反的
注意表中的行是从第0行开始的而不是第1行
9. 注释
-
单行注释:
-- 这是单行注释# 这是单行注释