Mysql基本操作语句 增-删-改
增
INSERT INTO 表名(属性名1,属性名2) VALUES(值1,值2)
把查询结果直接添加到表里
INSERT INTO sales_reps(id, name, salary, commission_pct) SELECT employee_id, last_name, salary, commission_pct FROM employees WHERE job_id LIKE '%REP%';
删
DELETE FROM <表名> [WHERE 子句]
改
UPDATE 表名 SET sold_number=sold_number+1 WHERE fid=%s
如果省略 WHERE 子句,则表中的所有数据都将被更新。
触发器

begin INSERT INTO sold_goods(gid,sid,price,gname) VALUES(NEW.qid,NEW.fid,NEW.price,NEW.name); end # ①在INSERT型触发器中,NEW用来表示将要(BEFORE)或已经(AFTER)插入的新数据; ②在UPDATE型触发器中,OLD用来表示将要或已经被修改的原数据,NEW用来表示将要或已经修改为的新数据; ③在DELETE型触发器中,OLD用来表示将要或已经被删除的原数据; OLD是只读的,而NEW则可以在触发器中使用 SET 赋值,这样不会再次触发触发器,造成循环调用 BEGIN -> IF NEW.amount < 0 THEN -> SET NEW.amount = 0; -> ELSEIF NEW.amount > 100 THEN -> SET NEW.amount = 100; -> END IF; END$$
变量赋值,并且调用,where and 多个条件

SET @num=''; #声明一个名为@num的变量,并将它赋值为空,MySQL里面的变量是不严格限制数据类型的,它的数据类型根据你赋给它的值而随时变化 。(SQL SERVER中使用declare语句声明变量,且严格限制数据类型。) SELECT @num:=uname from user WHERE uid=1; #select的结果赋值给 @num SELECT `password` FROM `user` WHERE uname=@num #@num作为值使用 -------------------------------------- SELECT `password`,phone INTO @mima,@dianhua FROM user WHERE uid=1; #赋值多个 SELECT uid FROM `user` WHERE phone=@dianhua AND `password`=@mima #用值多个
SELECT @id:=uid FROM `user` WHERE uname='abc'; INSERT INTO user_have_goods(uuid,have_good_id) VALUES(@id,88);
limit限制数据量
SELECT have_good_id FROM user_have_goods WHERE uuid=1 #返回结果8个 SELECT have_good_id FROM user_have_goods WHERE uuid=1 LIMIT 5 #返回结果5个
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术