两张表增删改查是什么

说到增删改查,我有几年的实践经验。
来来来,我们一一说说这四个操作。

我们先来说说创造。
就像你在淘宝上买新产品,你得先加入购物车一样,对吧?在数据库中,INSERT语句用于“添加”一条新记录。
记得有一次,我们公司要为新员工建立一个档案,我必须将新员工的个人数据插入到员工表中。
SQL语句大概是这样的:
sql INSERT INTO 员工(姓名、年龄、部门)VALUES ('张三', 2 8 , 'IT 部门');
我们来谈谈删除。
就像如果你决定不再保留那只可爱的仓鼠,你就必须将它从你的家中“移走”,对吗?在数据库中,使用DELETE语句来“删除”一条或多条记录。
例如,如果一个员工辞职,我需要删除Employees表中这个人的数据:
sql 从员工中删除 WHERE Name = '李思';
接下来是更新。
这就像买了一件衣服,穿了一段时间后,你想改变颜色或款式。
你必须“改变”它,不是吗?在数据库中,使用 UPDATE 语句“修改”现有记录。
例如,如果一个员工的部门调动,我需要更新Employees表中该人的部门信息:
sql UPDATE Employee SET Department = 'Marketing Department' WHERE Name = '王五';
最后,还有检索。
就像上网查天气,问今天会不会下雨一样,对吧?在数据库中,使用SELECT语句来“搜索”数据。
比如我想查看所有学生的信息,我应该这样写:
sql 从学生中选择;
说到这里,就不得不提一下表操作。
有时,您要检查的内容需要来自两个表的数据,这需要使用 JOIN 语句。
比如我想知道一个学生修了哪些课程,我需要将Students表和Courses表连接起来查看:
sql 选择学生.姓名,课程.课程名称 由学生 加入学生上的课程.CourseID = Courses.CourseID;
总之,这四种操作是数据库管理的基础。
如果您拥有它们,日常数据库维护将会有所帮助。
但具体应用应根据实际情况进行调整。
毕竟每个公司的业务逻辑都是不同的。

sql数据库增删改查基本语句 sql增删改查语法

粗略地说,增删改查(CRUD)SQL使用四个基本命令来执行所有数据库操作,但使用正确的方法可以产生巨大的差异。

我们先来说说最重要的INSERT INTO数据。
去年,当我们开始这个电子商务项目时,我们只是使用 INSERT INTO user(name, email) VALUES('Tom', 'tom@example.com') 就完成了。
但客户端反复插入重复的手机号码,最终使用 ON DUPLICATE KEY UPDATE email = VALUES(email) 解决了冲突。
还有一件事:不要忘记,当插入具有默认值或 NULL 值的列时,例如状态列默认为“活动”,您可以简单地写入 INSERT INTO users(name) VALUES ("Jerry") 并忽略状态。
还有一个更重要的细节。
去年,由于忘记添加索引,测试环境冻结了很长时间。
插入1 000条数据卡了很久。
用行话来说,这称为雪崩效应。
事实上,前面的一点点延迟就导致了后面的一切。

起初我以为查询(SELECT)是不小心写的,但后来发现这是不正确的。
例如,要查看去年 1 月份的订单,编写 SELECT FROMorders WHERE order_date > '2 02 3 -01 -01 ' 看起来很简单,但不要使用 SELECT - 去年检查用户时,表有 2 0 列,但只需要 3 列。
这导致 2 GB 数据被迁移并烧毁服务器。
使用 SELECT name, email FROM users WHERE last_login > '2 02 3 -07 -01 ' 的效率要高得多。
还有另一种情况。
去年报道的时候,我用了SELECT COUNT() FROM Orders GROUP BY status直接烧CPU。
最后,我发现添加一个索引(CREATE INDEX idx_status ONorders(status))就足够了。

说实话,更新(UPDATE)和删除(DELETE)操作相当复杂。
去年,一位同事写了 UPDATEusers SET email = 'new@example.com' ,但没有添加 WHERE。
结果,1 0万条数据被改变了。
后来我发现,在使用 UPDATEusers SET email='new@example.com'WHERE id=1 00 之前,先使用 SELECT FROMusers WHERE id=1 00 进行确认——很多人没有注意到这一点。
相同的该原则也适用于删除。
直接DELETE FROM users WHERE id = 1 可以立即删除表。
首先使用 SELECT FROMusers WHERE id = 1 来查看它在哪里。

最后提醒:不要直接删除具有默认值或 NULL 值的列。
例如,如果您对 status = 'pending' 的订单使用 DELETE FROM order WHERE status = 'pending',则表将为空,但库存不会减少。
建议添加 is_deleted 标志。
逻辑删除比物理删除更安全。