`

mysql的update join

 
阅读更多
有两个表
表1 a 字段 id name
表2 b 字段 id name
现在我想把表2的值更新到表1 ,当他们的id一样的时候

我的第一个想法是要用存储过程,但是感觉这么简单没必要用存储过程吧.
尝试搜了下update join 还真有.
语法:
UPDATE table_1 a LEFT JOIN table_2 b ON b.id = a.id SET a.name=b.name

下面是我时间项目中的sql:

UPDATE T_daily t1 
  join (select sum(ctuv) as ctuv,sum(notctuv) as notctuv,dt,pid,spid from 
(SELECT 
case when uvType='电信手机用户' then uv ELSE 0 end as  ctuv,
case when uvType<>'电信手机用户' then uv ELSE 0 end as notctuv,dt,pid,spid
from T_uv_d where dt>='2013-08-01' )tmp
group by dt,pid,spid) t2
 on t1.dt=t2.dt and t1.pid=t2.pid and t1.spid=t2.spid
 set  t1.ctuv=t2.ctuv,t1.notctuv=t2.notctuv 
0
2
分享到:
评论

相关推荐

    mysql多表join时候update更新数据的方法

    sql语句: 代码如下:update item i,resource_library r,resource_review_link l set i.name=...id and i.name=” JOIN UPDATE & JOIN DELETE 代码如下: update a set a.schoolname = b.schoolname from tb_Std as a jo

    Mysql联表update数据的示例详解

    本文将深入探讨MySQL UPDATE JOIN语法,并通过实例来演示其用法。 1. MySQL UPDATE JOIN语法 在MySQL中,UPDATE JOIN语句可以让你在更新主表(T1)的同时,参考一个或多个关联表(如T2)的数据。基本语法如下: ...

    mysql 开发技巧之JOIN 更新和数据查重/去重

    1 INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL JOIN(MySQL 不支持)、CROSS JOIN 这是在网上找到的非常好的一篇博文,图解 join 语句: CODING HORROR-A Visual Explanation of SQL Joins 下图可以很清楚的明白,join ...

    mysql update语句的用法详解

    这里使用了内部联合,多表`UPDATE`可以使用`SELECT`语句中允许的任何类型的联合,如`LEFT JOIN`。 需要注意的是,`ORDER BY`和`LIMIT`不能与多表`UPDATE`同时使用。在涉及InnoDB表的多表`UPDATE`中,如果有外键约束...

    MySQL数据库update更新子查询

    MySQL数据库的`UPDATE`语句是用来修改已存在数据表中的数据。在处理涉及子查询的更新操作时,有一些特定的规则和限制需要注意。本篇将深入探讨如何在`UPDATE`语句中正确使用子查询,并提供相关的解决方案。 首先,...

    深入理解mysql之left join 使用详解

    MySQL 的 LEFT JOIN 是一种用于联接两个或更多表的 SQL 操作,它返回左表(即在 JOIN 语句左侧的表)的所有记录,以及右表(JOIN 语句右侧的表)与左表匹配的记录。如果右表中没有匹配的记录,结果集中的相应列将...

    mysql 一次更新(update)多条记录的思路

    在MySQL中,更新多条记录通常涉及到`UPDATE`语句的使用。在处理批量更新时,如果需要根据特定条件更新不同记录的多个字段,可以采用`CASE`语句结合`WHERE`子句来实现。标题提到的问题是,在已经通过`INSERT`方法导入...

    Mysql中Join的使用实例详解

    MySQL提供了多种JOIN类型,包括INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL OUTER JOIN等,来满足不同的查询需求。 本章节主要讲解了在MySQL中使用JOIN进行多表查询的方法,特别是LEFT JOIN和JOIN(通常指的是INNER ...

    解析mysql与Oracle update的区别

    相比之下,MySQL 支持在 `UPDATE` 语句中直接使用 `JOIN` 关键字来更新关联的表,使得多表更新更为简洁。下面的 MySQL 示例展示了如何在一个 `UPDATE` 语句中同时更新 `t_cus_year_status` 和 `t_customer_infos` 表...

    MYSQL使用inner join 进行 查询/删除/修改示例

    MySQL中的INNER JOIN是一种关联两个或更多表的查询方式,它只返回两个表中存在匹配记录的结果。INNER JOIN在数据操作语言(DML)中扮演着重要角色,支持查询、删除和修改操作。以下是对这些操作的详细解释: **查询...

    MySQL 从一张表update字段到另外一张表中

    在MySQL数据库中,更新操作是常见的数据维护任务之一。当你需要将一张表中的某些字段值复制并更新到另一张表时,可以利用SQL的JOIN语句或者子查询来实现。这个过程通常涉及到多表关联,确保正确匹配源数据和目标数据...

    MySql MySql使用方法 Mysql例子

    - `JOIN`:连接两个或多个表,例如`SELECT users.name, orders.order_date FROM users JOIN orders ON users.id = orders.user_id;`显示用户及其订单日期。 - `GROUP BY`和`HAVING`:对数据进行分组并筛选,常用于...

    MYSQL

    10.5.2 SELECT 查询的速度 10.5.3 MySQL 怎样优化WHERE子句 10.5.4 MySQL 怎样优化LEFT JOIN 10.5.5 MySQL 怎样优化LIMIT 10.5.6 INSERT查询的速度 10.5.7 UPDATE查询的速度 10.5.8 ...

    MySql 5.1 参考手册.chm

    7.2.9. MySQL如何优化LEFT JOIN和RIGHT JOIN 7.2.10. MySQL如何优化嵌套Join 7.2.11. MySQL如何简化外部联合 7.2.12. MySQL如何优化ORDER BY 7.2.13. MySQL如何优化GROUP BY 7.2.14. MySQL如何优化LIMIT 7.2.15. ...

    在MySQL中使用JOIN语句进行连接操作的详细教程

    在MySQL中联接(join)行为是指两个或多个表到一个表中可以使用连接在SELECT,UPDATE和DELETE语句中加入MySQL表。我们将看到一个例子LEFT JOIN简单的MySQL连接。 在命令提示符使用联接: 假设我们两个表的教程tcount_...

    MySQL中文参考手册.chm

    10.5.2 SELECT 查询的速度 10.5.3 MySQL 怎样优化WHERE子句 10.5.4 MySQL 怎样优化LEFT JOIN 10.5.5 MySQL 怎样优化LIMIT 10.5.6 INSERT查询的速度 10.5.7 UPDATE查询的速度 ...

    mysql语法手册-mysql语法手册-mysql语法手册-mysql语法手册

    手册还会涉及如何通过JOIN操作将多个表的数据组合在一起,如INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN。 四、索引 索引能显著提高查询速度。手册会讲解如何创建(CREATE INDEX)、查看(SHOW INDEXES)和删除...

    MySQL SELECT同时UPDATE同一张表问题发生及解决

    在MySQL中,当你尝试在`UPDATE`语句中同时使用`SELECT`来更新同一张表时,会遇到一个限制,即“你不能在`FROM`子句中指定要更新的目标表”。这是因为MySQL的语法规范不支持这样的操作,以避免数据更新的不确定性。...

Global site tag (gtag.js) - Google Analytics