MySQL:CRUD

一.新增(Create)

全列插入:insert into 表名 values(值1,值2,...); (列与值顺序和数目对应)

指定列插入:insert into 表名(列名1,列名2) values(值1,值2);

一次性插入多条数据:insert into 表(列名1,列名2) values(值1,值2),(值1,值2),(值1,值2);

二.查询(Retrieve)

1.全列查询:select * from 表名;

2.指定列查询:select 列名,列名 from 表名;(一个或多个列名)

3.列为表达式的查询:select 列名/表达式 from 表名;

4.别名查询:select 列名 as 别名,列名 from 表名;

5.去重查询:select distinct 列名 from 表名;

6.排序:select 列名 from 表名 order by 列名 asc/desc;

7.条件查询:select 列名 from 表名 where 列名/表达式 比较/逻辑运算符 order by 列名 asc/desc;

例:select id,name as 姓名 from student where id = 1 order by id asc;

8.区间查询:select 列名 from 表名 where 列名 between 数值1 and 数值2;

select 列名 from 表名 where 列名>=数值1 and 列名<=数值2;

(前面这两条SQL语句都意为,取出某列数值在数值1,数值2的行数,记住是左闭右闭)

select 列名 from 表名 where 列名 in (数值1,数值2,数值3);

select 列名 from 表名 where 列名=数值1 or 列名=数值2 or 列名=数值3;

9.模糊查询:select 列名 from 表名 where 列名 like ...;

例1:select * from student where name ='孙%';(查出姓孙的所有同学,不管你孙后面是什么字符,不管后面有多少个字符)

例2:select * from student where name ='孙_'; (查出姓孙,且孙只有为一个字符的同学)

10.分页查询:select * from 表名 where 条件 order by 列名 asc|desc limit num; (默认下标为0)

select * from 表名 where 条件 order by 列名 asc|desc limit start,num;

select * from 表名 where 条件 order by 列名 asc|desc limit num offset start;

查询不为null的数据:select * from 表名 where 列名 is not null; (反之为查询数据为null的数据)

反例:select * from 表名 where 表名 <=> null;(是错误的!!查出的结果集为空)

补充:select null = null;(返回null)| select null <=> null; (返回true也就是1)

select null <> 1;(返回null)

记住:MySQL的null表示不定值,不表示空,任何值与不定值比较都为null。除<=>逻辑符号外,<=>对于null的比较是安全的,因此null<=>null返回1;

三.修改、更新(Update)

update 表名 set 列名=值 where 条件 order by 列名 asc|desc limit n;

(注意:如果不使用条件和limit约束,整表的数据都会被修改!语句逻辑:先确定表,再使用where条件筛选,接着order by 排序,把前n条数据进行修改。)(limit 在update语句中不能使用start)

四.删除(Delete)

delete from 表名 where 条件 order by 列名 asc|desc limit n;

(注意:注意:如果不使用条件和limit约束,整表的数据都会被删!)

相关推荐
广州灵眸科技有限公司7 小时前
xfce桌面触摸校准:基于灵眸科技EASY-EAl-Orin-Nano
数据库·windows·科技
Cloud云卷云舒9 小时前
云卷云舒:从Oracle/MySQL迁移到HaishanDB:迁移评估工具核心技术拆解
mysql·oracle·ai-native·haishandb·信创数据库替换
憧憬成为web高手9 小时前
皮卡丘靶场速通--sql 2
数据库·sql·mybatis
段一凡-华北理工大学9 小时前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化
oradh11 小时前
Oracle XTTS实现跨版本迁移和升级(Oracle 11g单库升级至19C RAC集群)
数据库·oracle·11g升级19c·xtts跨版本迁移和升级
用户713335851562412 小时前
MySQL - 事务、redo/undo 日志与 MVCC
mysql
z1234567898612 小时前
2026最新两款AI编程工具深度对比实测
java·数据库·ai编程
程序猿DD12 小时前
一个 API Key,统一调用大模型、生图和联网搜索
数据库·网关
java_logo12 小时前
Docker Compose 部署 ClickHouse:快速搭建高性能列式数据库
数据库·clickhouse·docker·列式数据库·轩辕镜像·高性能数据库·clickhouse部署教程
用户713335851562413 小时前
MySQL - InnoDB 的 Buffer Pool
mysql