mysql学习01

32 阅读1分钟

[所使用的示例文件来自尚硅谷]

1. 基础语法

1.1 SELECT 语句

SELECT 是 SQL(Structured Query Language)中最核心、最常用的语句,用于从数据库中查询(检索)数据。它不会修改数据,只负责“读取”,是数据分析、报表、应用后端取数等场景的基础。

SELECT [DISTINCT] column1, column2, ...
FROM table_name 
[WHERE condition] 
[GROUP BY column_list] 
[HAVING group_condition] 
[ORDER BY column [ASC|DESC]] 
[LIMIT number];

举 例:

# 查看employees数据表
SELECT * FROM employees;

# 筛选出表格中员工好为90的员工姓名和部门号
SELECT first_name,last_name,department_id
FROM employees
WHERE department_id = 90

# 筛选出员工工资在800012000之间的员工的姓名和部门号和工资
SELECT first_name, last_name,salary 
FROM employees
# WHERE salary BETWEEN 8000 AND 12000
WHERE salary >= 8000 AND  salary <= 12000
ORDER BY salary ASC
LIMIT 0,10

# 查看数据有多少行
SELECT COUNT(*) FROM employees;

image.png

1.2 DISTINCT

去除重复的行,返回唯一(不重复)的结果组合

注意:DISTINCT 是对 所有 SELECT 列的组合 去重,不是单列。 举 例:

# 去除工资重复的行,并统计有多少条记录
SELECT COUNT(DISTINCT salary) 
FROM employees
# 57
SELECT DISTINCT salary ,first_name
FROM employees

image.png

1.3 ORDER BY

按指定列对查询结果进行升序(ASC)或降序(DESC)排列

# 提取姓名和工资并将工资按照降序
SELECT first_name, last_name, salary
FROM employees
ORDER BY salary DESC

image.png

1.4 LIMIT

限制分页的数目

SELECT * FROM employees
LIMIT 0, 10

image.png

1.5 INSERT INTO

INSERT INTO 语句用于向表中插入新记录。

CREATE TABLE test (
    first_name VARCHAR(50),
    last_name VARCHAR(50),
    salary DECIMAL(10,2)
);

INSERT INTO test (first_name, last_name, salary)
VALUES ('jack', 'ma', 1000);

SELECT * FROM test

image.png