Mysql 查询表参考

基本操作

数据库和表的基础操作_数据库和表的基本操作-优快云博客文章浏览阅读222次。数据库基础知识_数据库和表的基本操作https://blog.youkuaiyun.com/weixin_67573348/article/details/126946843

单表

语法分析:MySQL 单表查询 语法分析_adn查询-优快云博客文章浏览阅读188次。单表查询_adn查询https://blog.youkuaiyun.com/weixin_67573348/article/details/127014849

语法引用:
Mysql单表查询 示例结果-优快云博客文章浏览阅读353次,点赞7次,收藏8次。SQL之母 - SQL自学网站SQL自学网站。https://blog.youkuaiyun.com/weixin_67573348/article/details/134684593

 多表

思路分析:Mysql多表查询 思路 ——示例——sql顺序-优快云博客文章浏览阅读648次,点赞9次,收藏8次。虽然这是一个一般性的执行顺序,但实际的数据库系统可能会根据查询的具体情况进行一些优化,以提高性能。在复杂的查询中,数据库系统可能会重新安排执行计划,例如使用索引来加速搜索,以获得更高的执行效率。需要注意的是,虽然 SQL 查询的逻辑执行顺序如上所述,但在实际执行中,数据库引擎可能会根据优化器的决策进行重新排列操作,以提高性能。指定要查询的表,执行这一步时会生成一个虚拟的结果集,包含了所有所需的列和行。字段可以作为,表查询结果的字段, 表也可以作为,查询结果的表。子句中的条件,筛选出满足条件的分组。https://blog.youkuaiyun.com/weixin_67573348/article/details/134839651

语法示例

Mysql多表查询 & 子查询 语法分析| 示例-优快云博客文章浏览阅读797次,点赞16次,收藏20次。CROSS JOIN是一种简单的关联查询,不需要任何条件来匹配行,它直接将左表的每一行与右表的每一行进行组合,返回的结果是两个表的笛卡尔积。SELECTs.gender,s.age,s.scoreFROMstudents s在 SQL 中,INNER JOIN 是一种常见的关联查询方式,它根据两个表之间的关联条件,将满足条件的行组合在一起。注意,INNER JOIN 只返回两个表中满足关联条件的交集部分,即在两个表中都存在的匹配行。SELECT *https://blog.youkuaiyun.com/weixin_67573348/article/details/134712094

多表添加

批量更细sql

UPDATE table_b
SET age = CASE
    WHEN id = 1 THEN 10
    WHEN id = 2 THEN 1
    WHEN id = 3 THEN 11
    ELSE age
END
WHERE id IN (1, 2, 3);

 

  • id 等于 1 时,将 age 更新为 10。
  • id 等于 2 时,将 age 更新为 1。
  • id 等于 3 时,将 age 更新为 11。
  • 对于不在上述列表中的 id,保持 age 字段的当前值不变。

最后,WHERE 子句限制了只对 id 在 (1, 2, 3) 中的记录进行更新操作。

所以,这个更新语句的作用是将 table_b 表中 id 分别为 1、2、3 的记录的年龄更新为 10、1、11,其他记录的年龄保持不变。

条件添加sql 

INSERT INTO table_a (id, name) SELECT id, name FROM table_b WHERE age > 12;

 

这个 SQL 语句是一个 INSERT INTO 语句,它的作用是将符合条件的数据从一个表 (table_b) 插入到另一个表 (table_a) 中。具体来说:

  1. INSERT INTO table_a (id, name): 这部分指定了要将数据插入到哪个表中以及插入哪些列。在这里,我们要将数据插入到 table_a 表,并指定了要插入的两列为 idname

  2. SELECT id, name FROM table_b WHERE age > 12: 这部分是一个 SELECT 查询,它选择了符合条件的数据。具体地,它选择了 table_b 表中满足 age > 12 条件的记录,并且选择了这些记录的 idname 字段的值。

因此,整个 SQL 语句的作用是将 table_b 表中 age 大于 12 的记录的 idname 字段的值插入到 table_a 表中的相应字段。

 

-- 创建 table_a 表
CREATE TABLE table_a (
    id INT PRIMARY KEY,
    name VARCHAR(50)
);

-- 创建 table_b 表
CREATE TABLE table_b (
    id INT PRIMARY KEY,
    name VARCHAR(50),
    age INT
);

-- 插入一些测试数据到 table_b
INSERT INTO table_b (id, name, age) VALUES
(1, '张三', 10),
(2, '李四', 15),
(3, '王五', 20),
(4, '赵六', 8);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值