当前位置: 首页 > news >正文

MySQL 基本语法

一、数据库操作

1. 创建数据库

语法格式:

CREATE DATABASE [IF NOT EXISTS] database_name;

创建一个名为 test_db 的数据库:

CREATE DATABASE IF NOT EXISTS test_db;

IF NOT EXISTS 是可选的,用于避免数据库已存在时出现错误。

2. 查看数据库列表

语法格式:

SHOW DATABASES;

执行后会列出当前 MySQL 服务器中所有的数据库名称。

3. 选择要使用的数据库

语法格式:

USE database_name;

使用 test_db 数据库:

USE test_db;

4. 删除数据库

语法格式:

DROP DATABASE [IF EXISTS] database_name;

删除 test_db 数据库(谨慎操作):

DROP DATABASE IF EXISTS test_db;

二、数据表操作

1. 创建数据表

语法格式:

CREATE TABLE table_name (

    column1_name data_type constraints,

    column2_name data_type constraints,

    ...

    PRIMARY KEY (column_name)

);

创建 students 表:

CREATE TABLE students (

    id INT AUTO_INCREMENT PRIMARY KEY,

    name VARCHAR(50) NOT NULL,

    age INT,

    gender ENUM('男', '女')

);

2. 查看数据表结构

语法格式:

DESCRIBE table_name;

或缩写形式:

DESC table_name;

查看 students 表结构:

DESC students;

3. 修改数据表

添加列:

ALTER TABLE table_name

ADD COLUMN new_column_name data_type constraints;

给 students 表添加 address 字段:

ALTER TABLE students

ADD COLUMN address VARCHAR(100);

修改列:

ALTER TABLE table_name

MODIFY COLUMN column_name new_data_type new_constraints;

修改 students 表的 age 字段类型:

ALTER TABLE students

MODIFY COLUMN age SMALLINT;

删除列:

ALTER TABLE table_name

DROP COLUMN column_name;

删除 students 表的 address 字段:

ALTER TABLE students

DROP COLUMN address;

4. 删除数据表

语法格式:

DROP TABLE [IF EXISTS] table_name;

删除 students 表:

DROP TABLE IF EXISTS students;

三、数据操作(增删改查)

1. 插入数据(INSERT)

语法格式:

INSERT INTO table_name (column1, column2, ...)

VALUES (value1, value2, ...);

向 students 表插入一条记录:

INSERT INTO students (name, age, gender)

VALUES ('张三', 20, '男');

插入多条记录:

INSERT INTO table_name (column1, column2, ...)

VALUES

    (value1_1, value1_2, ...),

    (value2_1, value2_2, ...),

    ...;

2. 查询数据(SELECT)

基本语法格式:

SELECT column1, column2, ...

FROM table_name

[WHERE condition]

[GROUP BY column_name]

[HAVING condition]

[ORDER BY column_name [ASC|DESC]]

[LIMIT offset, count];

示例:

 查询所有学生信息

SELECT * FROM students;

 查询年龄大于 18 岁的学生姓名和年龄

SELECT name, age

FROM students

WHERE age > 18;

 按年龄分组并统计人数

SELECT age, COUNT(*) AS num_students

FROM students

GROUP BY age;

 筛选人数大于 2 的年龄组

SELECT age, COUNT(*) AS num_students

FROM students

GROUP BY age

HAVING num_students > 2;

 按年龄升序排列

SELECT *

FROM students

ORDER BY age ASC;

 查询前 5 条记录

SELECT *

FROM students

LIMIT 5;

3. 更新数据(UPDATE)

语法格式:

UPDATE table_name

SET column1 = value1, column2 = value2, ...

WHERE condition;

更新张三的年龄为 21 岁:

UPDATE students

SET age = 21

WHERE name = '张三';

4. 删除数据(DELETE)

语法格式:

DELETE FROM table_name

WHERE condition;

删除年龄小于 18 岁的学生记录:

DELETE FROM students

WHERE age < 18;

http://www.dtcms.com/a/326597.html

相关文章:

  • 【网络基础】深入理解 TCP/IP 协议体系
  • 秒懂边缘云|1分钟了解边缘安全加速 ESA
  • GCC C++实现Matlab矩阵计算和数学函数功能
  • 乡土诗性的多重奏鸣——儿歌《生我养我的小村庄》文学赏析
  • C5.3:发射极偏置和LED驱动电路
  • 26考研|西安电子科技大学优势学科、25考研复试线及就业质量分析报告
  • 力扣热题100-----322.零钱兑换
  • 事务的特性
  • 下一代防火墙组网方案
  • IoT/透过oc_lwm2m/boudica150 源码中的AT指令序列,分析NB-IoT接入华为云物联网平台IoTDA的工作机制
  • visual studio 2015 使用番茄助手(Visual Assist)给函数自动添加注释模板
  • WSL / Linux安装MySQL(以及注意事项)
  • 嵌入式学习的第四十八天-中断+OCP原则
  • Photoshop图层混合模式:实现图像元素透明度渐变过渡的终极指南
  • Effective C++ 条款36: 绝不重新定义继承而来的非虚函数
  • 数据结构:树与二叉树
  • ARM基础概念 day51
  • easyExcel嵌套子集合导出Excel
  • 2025第十六届蓝桥杯大赛青少组省赛C++真题(初级组和中级组)
  • MCU的设计原理
  • SNMP入门教程:Windows下编译
  • Linux811 YUM;SHELL:if else fi,for
  • 进程线程切换的区别
  • 【k近邻】 K-Nearest Neighbors算法k值的选择
  • 第4节 大模型推理内存与计算优化
  • 【FreeRTOS】任务间通讯6: 任务通知- Task Notification
  • python+requests+yaml实现接口自动化用例
  • 【软件分享】格式工厂FormatFactory便携版本(解压即用)
  • 介绍一下jQuery的AJAX异步请求
  • Salesforce案例:零售企业会员积分体系