MySQL的知识点包括DDL(数据定义语言)、DML(数据操作语言)、DQL(数据查询语言)和DCL(数据控制语言)。按照公司里的分工和岗位职责,作为一个数据分析师,适当了解DDL、DML,重点掌握DQL,知道DCL即可。
以下是重要知识点展开,部分提供了代码示例。
1. DDL(数据定义语言):DDL用于定义数据库的结构,包括创建、修改和删除数据库、表、列、索引等。常用的DDL命令包括:
CREATE DATABASE:创建数据库。
CREATE TABLE:创建表。
ALTER TABLE:修改表结构。
DROP TABLE:删除表。
示例:
CREATE DATABASE mydatabase;
CREATE TABLE students (id INT PRIMARY KEY,name VARCHAR(50),
age INT);
2. DML(数据操作语言):DML用于对数据库中的数据进行操作,包括插入、更新和删除数据。常用的DML命令包括:
INSERT INTO:插入数据。
UPDATE:更新数据。
DELETE FROM:删除数据。
示例:
INSERT INTO students (id, name, age) VALUES (1, 'John', 20);
UPDATE students SET age = 21 WHERE id = 1;
DELETE FROM students WHERE id = 1;
3. DQL(数据查询语言):DQL用于从数据库中查询数据,常用的DQL命令是SELECT语句。SELECT语句可以用于获取特定的列、过滤数据、排序结果等。
示例:
DQL还可以使用聚合函数(如COUNT、SUM、AVG等)对数据进行统计,使用GROUP BY对结果进行分组,使用HAVING对分组结果进行过滤。
示例:
SELECT COUNT(*) FROM students;
SELECT gender, AVG(age) FROM students GROUP BY gender;
SELECT gender, AVG(age) FROM students GROUP BY gender HAVING AVG(age) > 20;
(1)条件查询和排序:
条件查询:SELECT column1, column2, ... FROM table_name WHERE condition;
排序:SELECT column1, column2, ... FROM table_name ORDER BY column_name ASC/DESC;
(2)表关联查询:
内连接:SELECT column1, column2, ... FROM table1 INNER JOIN table2 ON table1.column = table2.column;
左连接:SELECT column1, column2, ... FROM table1 LEFT JOIN table2 ON table1.column = table2.column;
右连接:SELECT column1, column2, ... FROM table1 RIGHT JOIN table2 ON table1.column = table2.column;
(3)聚合函数和分组:
聚合函数:SELECT COUNT(column_name), SUM(column_name), AVG(column_name), MAX(column_name), MIN(column_name) FROM table_name;
分组:SELECT column1, column2, ..., COUNT(column_name) FROM table_name GROUP BY column1, column2, ...;
(4)子查询:
使用子查询作为条件查询:SELECT column1, column2, ... FROM table_name WHERE column_name IN (SELECT column_name FROM table_name2);
使用子查询作为数据源:SELECT column1, column2, ... FROM (SELECT column_name FROM table_name) AS subquery;
(5)开窗函数:
使用开窗函数计算排名:SELECT column1, column2, ..., RANK() OVER (PARTITION BY column_name ORDER BY column_name DESC) AS rank FROM table_name;
4. DCL(数据控制语言):DCL用于控制数据库用户的访问权限,包括授权、回收权限等。常用的DCL命令包括:
GRANT:授予用户权限。
REVOKE:回收用户权限。
示例:
这些是MySQL中的一些重要知识点,掌握了这些知识点,你将能够进行数据库的创建、修改、查询和操作。