MySQL基础系列之 DML数据操作语句CRUD大全

版权声明:如需转载,请注明出处。 https://blog.csdn.net/caiqing116/article/details/84503611

CRUD是指在做计算处理时的增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete)几个单词的首字母简写。CRUD主要被用在描述软件系统中数据库或者持久层的基本操作功能
下文中所用的表创建如下:
CREATE TABLE tb_goods(
id int not null auto_increment,
goodsname varchar(20) COMMENT ‘商品名称’,
price DECIMAL(9,2),
PRIMARY KEY (id)
)
插入数据标准方式
insert into 表名(字段名,字段名,…) values(值,值,…)
insert into tb_goods(goodsname,price) value(‘苹果’,9.99);

插入多条数据
insert into 表名(字段名,字段名,…) values(值,值,…),(值,值)
insert into tb_goods(goodsname,price) values(‘苹果’,9.99),(‘香蕉’,8.99);

单个字段插入 set语法 insert into 表名 set 字段=值,字段=‘值’,…;
insert into tb_goods set goodsname=‘火龙果’,price=6.66;

复制旧表的数据到新表(假设两个表结构一样)
INSERT INTO 新表 SELECT * FROM 旧表

复制旧表的数据到新表(假设两个表结构不一样)
INSERT INTO 新表(字段1,字段2,…) SELECT 字段1,字段2,… FROM 旧表

复制旧表的数据到新表且带其他常量
INSERT INTO 新表(字段1,字段2,字段3,…) SELECT 字段1,字段2,‘常量值’,… FROM 旧表
REPLACE INTO 是先判断表中主键 或唯一索引 是否和插入的数据字段有相同的值
值一样的数据它就是修改该数据(先删除) 如果不一样则插入一条新数据。
REPLACE INTO tb_goods(1,‘芒果’,8.77);
REPLACE INTO tb_goods(id,goodsname,price) value(1,‘芒果’,8.99);
ON DUPLICATE KEY UPDAT插入数据 存在则更新
INSERT INTO tb_goods(id,goodsname) values(1,‘瓜’) ON DUPLICATE KEY UPDATE goodsname=‘西瓜’;

查询数据通用语句
SELECT column_name FROM table_name
[WHERE Clause][LIMIT N][ OFFSET M]
查询语句中你可以使用一个或者多个表,表之间使用逗号(,)分割,并使用WHERE语句来设定查询条件。
SELECT 命令可以读取一条或者多条记录。
可以使用星号(*)来代替其他字段,SELECT语句会返回表的所有字段数据
可以使用 WHERE 语句来包含任何条件。
可以使用 LIMIT 属性来设定返回的记录数。
可以通过OFFSET指定SELECT语句开始查询的数据偏移量。默认情况下偏移量为0。

更新通用语句
UPDATE table_name SET field1=value1 [WHERE Clause]

删除数据通用语句
DELETE FROM table_name [WHERE Clause]
delete,drop,truncate 都有删除表的作用,区别在于:
1、delete 和 truncate 仅仅删除表数据,drop 连表数据和表结构一起删除
2、delete 是 DML 语句,操作完以后如果不想提交事务还可以回滚,truncate 和 drop 是 DDL 语句,操作完马上生效,不能回滚。
3、 执行的速度上,drop>truncate>delete

猜你喜欢

转载自blog.csdn.net/caiqing116/article/details/84503611