MySQL 增删改查
程序员文章站
2022-05-01 19:56:07
目录1. 简单 增删改查2. 增2.1. replace into1. 简单 增删改查命令实例/* 数据操作 */ -------------------- 增 INSERT [INTO] 表名 [(字段列表)] VALUES (值列表)[, (值列表), ...] -- 如果要插入的值列表包含所有字段并且顺序一致,则可以省略字段列表。 -- 可同时插入多条数据记录! REPLACE 与 INSERT 完全一样,可互换。...
目录
1. 简单 增删改查
- 命令实例
/* 数据操作 */ ------------------ -- 增 INSERT [INTO] 表名 [(字段列表)] VALUES (值列表)[, (值列表), ...] -- 如果要插入的值列表包含所有字段并且顺序一致,则可以省略字段列表。 -- 可同时插入多条数据记录! REPLACE 与 INSERT 完全一样,可互换。 INSERT [INTO] 表名 SET 字段名=值[, 字段名=值, ...] -- 查 SELECT 字段列表 FROM 表名[ 其他子句] -- 可来自多个表的多个字段 -- 其他子句可以不使用 -- 字段列表可以用*代替,表示所有字段 -- 删 DELETE FROM 表名[ 删除条件子句] 没有条件子句,则会删除全部 -- 改 UPDATE 表名 SET 字段名=新值[, 字段名=新值] [更新条件] --------------------------- 使用实例 ------------------------------- # 数据库的基本操作:增删改查 (CRUD: create retrieve update delete) # 创建表 create table info(_id integer primary key,name varchar(20),age varchar(20)) # 增 insert into info(name,age) values('zs',18) # 删 delete from info (全部删除) // db1.tb1; delete from info where age = 18(删除年纪18的数据) # 改 update info set name = 'ls' where age >15 and age < 18(修改年纪在15到18之间的名字为ls) # 查 数据过滤 select * from info where age > 16 order by age desc limit 2(查询年纪在16岁以上,按年纪降序排列,限制数量为2) ## 过滤数据 where -- -- 注意: 1. order 在 where 之后; 2. 条件操作符: = < <= > >= != <> (不等于) between...and... ; 3. 操作符:and or (and 比 or 优先级高); 4. in 、not in `where id in (1101, 1002) order by xxx` 5. -- or 或 and select * from student where date<'1988-11-2' or date>'1988-12-1'; -- null 检测 ...... where prod_price is null; ## 排序 多列 限制条数; select prod_id, prod_price, prod_name from product order by prod_price desc, prod_name limit 6; -- 选取3列 -- 以 'prod_price 降序desc,再以prod_name升序asc' 排序; -- 限制显示前 6 条; ## 通配符(wildcard)过滤 --通配符% _ -- 概述: 为使用通配符,必须使用 like 操作符; 1. % : 任意字符出现任意次数;--0,1 或 多次; -- null 无法匹配; -- xxx%: 可以避免 '尾部空格' 问题; -- 可匹配 0 个字符; -- 包含某些文本的任意字符; 2. _ : 仅匹配 1个字符(必须是1个); (下划线) ----1次; select xx from tablexx where xx like 'x%x%'; -- 查找含该字符的 table; select prod_name from products where prod_name LIKE '%anvil%'; -- 1 ton anvil 等; ##
2. 增
2.1. replace into
-
replace你函数
- 语法:replace(object,search,replace)
- 语义:把object对象中出现的的search全部替换成replace。
- 实例:
update hellotable set 'helloCol' = replace('helloCol','helloSearch','helloReplace')
-
replace into
- 解释:
- 如果给定行数据不存在,那么MySQL REPLACE语句会插入一个新行。如果给定行数据存在,则REPLACE语句首先删除旧行,然后插入一个新行。
- 根据表中的主键或唯一索引来判断,如果表中没有
主键或唯一索引
,那么REPLACE INTO 就相当于 INSERT INTO,会直接插入一条数据。
- 用法:
INSERT INTO student(name,age) VALUES('张三',18) REPLACE INTO student(name,age) VALUES('张三',18) --没有该数据, 则插入该数据;
- 解释:
参考:
,
本文地址:https://blog.csdn.net/baidu_34170531/article/details/108987143