mysql指令笔记(基本)

一、数据库操作

  1. 创建数据库:
    CREATE DATABASE database_name;
  2. 选择数据库:
    USE database_name;
  3. 删除数据库:
    DROP DATABASE database_name;

二、表操作

  1. 创建表:
    CREATE TABLE table_name (column1 datatype constraint, column2 datatype constraint,...);
    例如:CREATE TABLE students (id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50), age INT);
  2. 查看表结构:
    DESC table_name;
  3. 删除表:
    DROP TABLE table_name;
  4. 插入数据:
    INSERT INTO table_name (column1, column2,...) VALUES (value1, value2,...);
    例如:INSERT INTO students (name, age) VALUES ('Tom', 20);
  5. 更新数据:
    UPDATE table_name SET column1 = value1, column2 = value2,... WHERE condition;
    例如:UPDATE students SET age = 21 WHERE name = 'Tom';
  6. 删除数据:
    DELETE FROM table_name WHERE condition;
    例如:DELETE FROM students WHERE age < 18;

修改表中字段的数据类型
ALTER TABLE sc MODIFY COLUMN grade NUMERIC;

改变表中的数据用update
UPDATE course SET ccredit = 10 WHERE cno = '003';

三、查询语句

  1. 基本查询:
    SELECT column1, column2,... FROM table_name;
    例如:SELECT name, age FROM students;
  2. 条件查询:
    SELECT * FROM table_name WHERE condition;
    例如:SELECT * FROM students WHERE age > 18;
  3. 排序查询:
    SELECT * FROM table_name ORDER BY column_name ASC/DESC;
    例如:SELECT * FROM students ORDER BY age ASC;
  4. 限制查询结果数量:
    SELECT * FROM table_name LIMIT offset, row_count;
    例如:SELECT * FROM students LIMIT 10, 5;(从第 10 行开始取 5 条记录)
  5. 聚合函数查询:
    • 常见聚合函数有 COUNT(计数)、SUM(求和)、AVG(平均值)、MAX(最大值)、MIN(最小值)。
      例如:SELECT COUNT(*) FROM table_name;SELECT SUM(column_name) FROM table_name;
  6. 分组查询:
    SELECT column1, aggregate_function(column2) FROM table_name GROUP BY column1;
    例如:SELECT age, COUNT(*) FROM students GROUP BY age;
  7. 多表连接查询:
    • 内连接(INNER JOIN):SELECT * FROM table1 INNER JOIN table2 ON table1.column = table2.column;
    • 左连接(LEFT JOIN):SELECT * FROM table1 LEFT JOIN table2 ON table1.column = table2.column;
    • 右连接(RIGHT JOIN):SELECT * FROM table1 RIGHT JOIN table2 ON table1.column = table2.column;

四、索引操作

  1. 创建索引:
    CREATE INDEX index_name ON table_name (column_name);
  2. 删除索引:
    DROP INDEX index_name ON table_name;

五、视图操作

  1. 创建视图:
    CREATE VIEW view_name AS SELECT column1, column2,... FROM table_name WHERE condition;
  2. 删除视图:
    DROP VIEW view_name;

六、存储过程和函数

  1. 创建存储过程:
    DELIMITER // CREATE PROCEDURE procedure_name(parameter_list) BEGIN -- SQL statements END // DELIMITER ;
  2. 调用存储过程:
    CALL procedure_name(parameter_values);
  3. 创建函数:
    DELIMITER // CREATE FUNCTION function_name(parameter_list) RETURNS return_datatype BEGIN -- SQL statements RETURN result; END // DELIMITER ;
  4. 调用函数:
    SELECT function_name(parameter_values);

七、数据类型

  1. 数值类型:
    • INT:整数类型,例如 id INT
    • FLOAT:单精度浮点数。
    • DOUBLE:双精度浮点数。
    • DECIMAL(m,n):定点数,其中 m 是总位数,n 是小数位数。
  2. 字符串类型:
    • VARCHAR(length):可变长度字符串,需要指定最大长度。
    • CHAR(length):定长字符串,长度固定。
    • TEXT:用于存储较长的文本数据。
  3. 日期和时间类型:
    • DATE:存储日期,格式为 YYYY-MM-DD。
    • TIME:存储时间,格式为 HH:MM:SS。
    • DATETIME:存储日期和时间,格式为 YYYY-MM-DD HH:MM:SS。

八、约束条件

  1. PRIMARY KEY:主键约束,用于唯一标识表中的每一行。
    例如:id INT PRIMARY KEY
  2. FOREIGN KEY:外键约束,用于建立表之间的关系。
    例如:student_id INT, FOREIGN KEY (student_id) REFERENCES students(id)
  3. UNIQUE:唯一约束,确保列中的值是唯一的。
    例如:email VARCHAR(50) UNIQUE
  4. NOT NULL:非空约束,要求列不能为空。
    例如:name VARCHAR(50) NOT NULL
  5. DEFAULT:默认值约束,为列指定默认值。
    例如:age INT DEFAULT 18
上一篇:堆排序(C++实现)-堆的基本概念


下一篇:Golang Slice扩容机制及注意事项-扩容机制 :