之前用SqlServer , update语句对表进行更新:
update a set a.xx= (select yy from b) ; 是可以的
但是在mysql中,不能直接使用set select的结果,

UPDATE ecs_users_copy
SET `user_name` = (
SELECT
`identity_card`
FROM
ecs_users_copy
WHERE
LENGTH(identity_card) = 18
AND LENGTH(user_name) != 18
)

这是错误的做法!

必须使用inner join:

demo1

update a inner join (select table from b) c set a.id = a.id where a xxx

demo2

UPDATE ecs_users_copy as a
INNER JOIN (SELECT `identity_card`,`user_name` FROM ecs_users_copy) b
SET a.user_name = a.identity_card
WHERE
a.user_id =a.user_id and (LENGTH(a.identity_card) = 18
AND LENGTH(a.user_name) != 18)

用到的东西越多就越容易混淆~~

写了一个星期Java , 再写回 php

\Exception e

, 突然发现为什么会不行,原来是php的异常是有$的~~~ 而Java没有~~~

mysql update select 用法的更多相关文章

  1. MySql Update Select 嵌套

    UPDATE `TB_CM_Dic` SET `ParentID` = (SELECT `ID` FROM (SELECT * FROM `TB_CM_Dic`) AS B WHERE `DicNam ...

  2. MySQL之SELECT用法

    主要是为了搞定一个select语句,因为语法比较奇怪,没看懂,百度了一些结果 select的东西相当于一个临时表,as就给这临时表取个名字. SELECT语句的完整语法SELECT语句的完整语法为: ...

  3. mysql update select

    根据文件名 更新外键ID UPDATE tb_obj  INNER JOIN tb_img ON tb_img.filename=tb_obj.filename  SET tb_objinfo.img ...

  4. MySQL update select组合

    update t_news inner join (select readCount from t_news t2 where t2.id=1) t1 set t_news.readCount = t ...

  5. mysql update select 从查询结果中更新数据

    UPDATE user_online_month_atu a INNER JOIN ( SELECT user_id, sum(c.online_times) as online_times, SUM ...

  6. MySQL Update语句用法

    用一个表的某列值更新另外一个表的某列值的sql语句: update tableA a innner join tableB b on a.column_1 = b.column_1 set a.col ...

  7. mysql update ...select的使用 & update 遇到 disable safe 的解决方法

    use `testdb`; update dtable d INNER JOIN new_table n ON d.details = n.details set d.email = n.email, ...

  8. 【转】mysql中select用法

    转自:http://blog.sina.com.cn/s/blog_a74f39a201013c3b.html 1.选择所有的记录 select * from table_name; 其中*表示表中的 ...

  9. Mysql学习总结(40)——MySql之Select用法汇总

    一.条件筛选 1.数字筛选:sql = "Select * from [sheet1$] Where 销售单价 > 100" 2.字符条件:sql = "Selec ...

随机推荐

  1. HDU 5699 二分+线性约束

    http://acm.hdu.edu.cn/showproblem.php?pid=5699 此题满足二分性质,关键在于如何判断当前的时间值可以满足所有的运送方案中的最长的时间. 对于每一次枚举出的k ...

  2. mongodb安装与权限配置

    mongodb下载地址:官方下载IDE工具:Robo 3T:官方下载 windows系统要求64位,最低2g内存,推荐8g内存及以上 安装过程没有需要配置的地方,直接下一步到结束,如果想要方便可以在环 ...

  3. iptables详解(6):iptables扩展匹配条件之’–tcp-flags’

    如果你看过前文,那么你一定知道,前文已经对"tcp扩展模块"做过总结,但是只总结了tcp扩展模块中的"--sport"与"--dport"选 ...

  4. DNS智能解析的搭建与配置

    分类: LINUX 原文地址:DNS智能解析的搭建与配置 作者:十年梦生  9月份整整忙了一个月,都抽不出时间来写篇文章,这几天趁着10.1终于有时间来写些东西了,将9月份所做的一些东西来做下总结. ...

  5. 【Html 学习笔记】第六节——列表

    无序列表:<ul></ul> 有序列表:<ol start=$num></ol> 不同类型的无序列表:<ul type="***&quo ...

  6. PHP工作笔记:离线执行php任务

    直接上代码,主要函数 ignore_user_abort(true);这个函数忽略了终端被关闭(打开的网页被关闭),后面 getfiles()这函数是执行采集任务的自定义函数,后面又配置了下路径打开写 ...

  7. iOS中几种数据持久化方案

    概论 所谓的持久化,就是将数据保存到硬盘中,使得在应用程序或机器重启后可以继续访问之前保存的数据.在iOS开发中,有很多数据持久化的方案,接下来我将尝试着介绍一下5种方案: plist文件(属性列表) ...

  8. 【LeetCode 100_二叉树_遍历】Same Tree

    解法一:递归 bool isSameTree(TreeNode* p, TreeNode* q) { if (p == NULL && q == NULL) return true; ...

  9. PostgreSQL文档编译

    之前一直没有将doc进行编译,最近编译成功了,却无法用man来查看,发现是没有将man的目录添加到搜索路径: MANPATH /usr/pgsql-10/share/man 加入到 /etc/man. ...

  10. Android支持Split Apks后,如何获得指定包名下的所有类

    从Android5.0以后,支持多个apk动态部署,这导致以前通过单一apk获取包路径下的所有类的方法失效,不过稍微修改一下原先的代码就可以,代码如下 public static final List ...