MySQL 基础入门篇

MySQL 是一个广泛使用的开源关系型数据库管理系统(RDBMS),以其高性能、可靠性和易用性而闻名。

数据库就是一个存放计算机数据的仓库,这个仓库按照一定的数据结构来对数据进行组织和存储,可以通过数据库提供的方法进行管理,下边是一些关于库的常用指令:

查看所有数据库:show databases;
创建数据库:create database 数据库名;
删除数据库:drop database 数据库;
查看当前使用的数据库:select darabase();
使用数据库:use 数据库名;

数据表是数据库存储数据的基本单位,有若干个字段组成,主要用来存储数据记录,下面是一些关于表的基本指令:

显示所有表:show tables;
创建表:create table 表名(列名 类型 约束1 约束2 ....,列名 类型 约束1 约束2...... );
查看表的结构:desc 表名;
删除数据表:drop table 表名;
修改表:alter table 表名 drop 列名; (删除表中的列)

alter table 表名 add 列 类型 约束1 约束2.....;(增加新的列)

alter table 表名 change 原列名 新列名 类型 约束1 约束2...;(修改列结构)

在创建表的时候要添加约束,下面是一些基本的约束:

主键:primary key (可以确定唯一的一行)

非空:not null (不能为空)

自增长:auto_increment (每次加一)

唯一:unique (列中的内容不能重复)

默认:default 默认值

检查:check (只有在MySQL8版本中才能使用)

外键:foreign key

关系型数据库表与表之间的关联,一个表中的某一列是另一个表中的主键

外键的创建和添加:constraint 外键名 foreign key (列名) references 表2 (列) on

update cascade on delete cascade;

外键的删除:alter table 表名 drop foreign key 外键名

数据

数据也就是表中添加的数据,所以它的指令主要涉及数据的增删改查:

数据的查询: select * from 表名(耗时数据大的时候慎用)

select 列,列.... from 表

select 列 as 别名,列 as 别名 from 表;

select 列 from 表 where 条件

条件where:比较运算符,逻辑运算符(and or not),判空(is null; is not null ),in,between and, like(%多个字 符;_一个字符)

关联查询:表与表之间存在关联关系

嵌套查询:第一次查询的结果作为第二次查询的条件

表连接:内连接---inner join

左外连接---left join

右外连接---right join

全连接---full join

分组、排序、分页、去重:去重---select distinct 列 from 表;

分组---select 列 as '组信息' ,count(*)as 个数 from 表

group by 列;

排序--- asc :升序 desc:降序

select * from 表 order by 列 desc,列 asc;

分页---limit (一个数字n代表前n个,两个数字start,count)

数据的增加: insert into 表名 values (列1,列2....),(值1,值2.....);------列与值对应

insert into 表名 (列1,列2...)values (值1,值2.....);------指定哪些列

insert into 表名 set 列1=值1,列2 = 值2...;

数据的修改:update 表名 set 列1=值1where 条件;------如果没有条件就修改整个表

delete from 表名 where 条件;------如果没有条件就清空表数据

函数

在MySQL中也有一些常见的函数:

select database();查看当前数据库

select user();查看当前用户

select version();查看当前版本

select now();查看现在时间

select curdate();查看当前日期

select curtime();查看当前时间

select unix_timestamp();时间戳

相关推荐
桃花键神14 分钟前
【2026精品项目】基于SpringBoot3+Vue3的旧物置换系统(包含源码+项目文档+SQL脚本+部署教程)
数据库·spring boot·sql·vue
Fan_-_37 分钟前
MySQL / PostgreSQL DDL 审核自动化:从人工 review 到 CI 拦截
mysql·postgresql·自动化
.柒宇.38 分钟前
Redis高频面试题与跳跃表原理详解
数据库·redis·缓存
Bryce学亮1 小时前
股票数据成本分析工具
数据库
思麟呀1 小时前
MySQL表的约束
数据库·mysql
步十人1 小时前
【FastAPI】ORM-02.使用 ORM 高效处理数据库逻辑
服务器·数据库·fastapi
Apache IoTDB1 小时前
时序数据库 IoTDB + 时序智能服务平台 TimechoAI 亮相中国核电信息技术高峰论坛
数据库·时序数据库·iotdb
未若君雅裁1 小时前
Redis 和 MySQL 双写一致性:延迟双删、读写锁、MQ、Canal 怎么选?
数据库·redis·面试
罗超驿2 小时前
9.深度剖析MySQL约束的工程设计:自增主键的分布式局限、外键约束的权衡,与CHECK的版本适配实践
数据库·mysql
Kiyra2 小时前
Agent 的记忆不是存数据库就行:上下文预算与轻量记忆的设计实战
数据库·人工智能·后端·面试·职场和发展·哈希算法