精华内容
下载资源
问答
  • mysqlupdate语句修改多个
    万次阅读
    2020-11-30 20:14:34
    update 表名 set 字段1=新值1, 字段2=新值2, 字段3=新值3, ... where 条件 
    mysql> select * from tb_person;
    +----+----------+-------------+------+------+-------------+---------------------+
    | id | name     | phone       | age  | sex  | description | create_time         |
    +----+----------+-------------+------+------+-------------+---------------------+
    |  1 | zhangsan | 132****2889 |   25 | M    | NoDesc      | 2020-11-30 20:03:07 |
    |  3 | lisi     | 152****7873 |   18 | F    | None        | 2020-11-30 20:08:33 |
    |  5 | wangwu   | 136****2908 |   25 | M    | Nothing     | 2020-11-30 20:10:11 |
    | 10 | zhaoliu  | 138****5322 |   15 | M    | Nothing     | 2020-11-30 20:12:11 |
    +----+----------+-------------+------+------+-------------+---------------------+
    4 rows in set (0.00 sec)
    
    mysql> update tb_person set name='looking', age=26, phone='152****9066' where id=10;
    Query OK, 1 row affected (0.00 sec)
    Rows matched: 1  Changed: 1  Warnings: 0
    
    mysql> select * from tb_person;
    +----+----------+-------------+------+------+-------------+---------------------+
    | id | name     | phone       | age  | sex  | description | create_time         |
    +----+----------+-------------+------+------+-------------+---------------------+
    |  1 | zhangsan | 132****2889 |   25 | M    | NoDesc      | 2020-11-30 20:03:07 |
    |  3 | lisi     | 152****7873 |   18 | F    | None        | 2020-11-30 20:08:33 |
    |  5 | wangwu   | 136****2908 |   25 | M    | Nothing     | 2020-11-30 20:10:11 |
    | 10 | looking  | 152****9066 |   26 | M    | Nothing     | 2020-11-30 20:12:48 |
    +----+----------+-------------+------+------+-------------+---------------------+
    4 rows in set (0.01 sec)
    

     

    更多相关内容
  • mysql更新多个字段语句写法!

    千次阅读 2021-03-13 23:21:45
    mysql 数据库,更新字段语句:一、UPDATEUPDATE的功能是更新表中的数据。这的语法和INSERT的第二种用法相似。必须提供表名以及SET表达式,在后面可以加WHERE以限制更新的记录范围。UPDATE table_anem SET column_...

    mysql 数据库,更新字段语句:

    一、UPDATE:

    UPDATE的功能是更新表中的数据。这的语法和INSERT的第二种用法相似。必须提供表名以及SET表达式,在后面可以加WHERE以限制更新的记录范围。

    UPDATE table_anem SET column_name1 = value1, column_name2 = value2, ...

    WHERE ... 。

    如下面的语句将users表中id等于123的记录的age改为24。

    UPDATE users SET age = 24 WHERE id = 123。

    同样,可以使用UPDATE更新多个字段的值 UPDATE users SET age = 24, name = 'Mike' WHERE id = 123。

    上面的UPDATE语句通过WHERE指定一个条件,否则,UPDATE将更新表中的所有记录的值。

    在使用UPDATE更新记录时,如果被更新的字段的类型和所赋的值不匹配时,MySQL将这个值转换为相应类型的值。如果这个字段是数值类型,而且所赋值超过了这个数据类型的最大范围,那么MySQL就将这个值转换为这个范围最大或最小值。如果字符串太长,MySQL就将多余的字符串截去。如果设置非空字段为空,那么将这个字段设置为默认值,数字的默认值是0,字符串的默认值是空串(不是null,是"")。

    有两种情况UPDATE不会对影响表中的数据:

    1. 当WHERE中的条件在表中没有记录和它匹配时。

    2. 将同样的值赋给某个字段时,如将字段abc赋为'123',而abc的原值就是'123'。和INSERT、REPLACE一样,UPDATE也返回所更新的记录数。但这些记录数并不包括满足WHERE条件的,但却未被更新的记录。如下同的UPDATE语句就未更新任何记录。

    UPDATE users SET age = 30 WHERE id = 12。

    Query OK, 0 rows affected (0.00 sec)。

    注意:如果一个字段的类型是TIMESTAMP,这个字段在其它字段更新时自动更新。

    在有些时候需要得到UPDATE所选择的行数,而不是被更新的行数。可通过一些API来达到。如MySQL提供的C API提供了一个选项可以得到想要的记录数。而MySQL的JDBC驱动得到的默认记录数也是匹配的记录数。

    UPDATE和REPLACE基本类似,但是之间有两点不同。

    1. UPDATE在没有匹配记录时什么都不做,而REPLACE在有重复记录时更新,在没有重复记录时插入。

    2. UPDATE可以选择性地更新记录的一部分字段。而REPLACE在发现有重复记录时就将这条记录彻底删除,再插入新的记录。也就是说,将所有的字段都更新了。

    二、DELETE和TRUNCATE TABLE:

    在MySQL中有两种方法可以删除数据,一种是DELETE语句,另一种是TRUNCATE TABLE语句。DELETE语句可以通过WHERE对要删除的记录进行选择。而使用TRUNCATE TABLE将删除表中的所有记录。因此,DELETE语句更灵活。

    如果要清空表中的所有记录,可以使用下面的两种方法:

    DELETE FROM table1。

    TRUNCATE TABLE table1。

    其中第二条记录中的TABLE是可选的。

    如果要删除表中的部分记录,只能使用DELETE语句。

    DELETE FROM table1 WHERE ...。如果DELETE不加WHERE子句,那么和TRUNCATE TABLE是一样的,但有一点不同,那就是DELETE可返回被删除的记录数,而TRUNCATE TABLE返回的是0。

    如一个表中有自增字段,使用TRUNCATE TABLE和没有WHERE子句的DELETE删除所有记录后,这个自增字段将起始值恢复成功。如不想这样做的话,可在DELETE语句中加上WHERE,如WHERE 1或WHERE true。

    DELETE FROM table1 WHERE 1。

    上面的语句在执行时将扫描每一条记录。并不比较,这个WHERE条件永远为true。这样做可保持自增的最大值,由于扫描了所有的记录,执行成本要比没有WHERE子句的DELETE大得多。

    DELETE和TRUNCATE TABLE的区别:DELETE可以通过WHERE语句选择要删除的记录。但执行得速度不快。且还可返回被删除的记录数。而TRUNCATE TABLE无法删除指定的记录,且不能返回被删除的记录。但执行得非常快。和标准的SQL语句不同,DELETE支持ORDER BY和LIMIT子句,通过这两个子句,可更好地控制要删除的记录。如当我们只想删除WHERE子句过滤出来的记录的一部分,可以使用LIMIB,如果要删除后几条记录,可通过ORDER BY和LIMIT配合使用。假设要删除users表中name等于"Mike"的前6条记录。可使用如下的DELETE语句:

    DELETE FROM users WHERE name = 'Mike' LIMIT 6。

    一般MySQL并不确定删除的这6条记录是哪6条,为保险,可使用ORDER BY对记录进行排序。

    取消

    评论

    展开全文
  • mysql update修改多条数据

    千次阅读 2021-04-06 01:16:33
    $display_order=array(23687=>'23687ff',23684=>... $sql= "UPDATE table SET name= CASE id";//name 某列 foreach ($display_order as $id => $ordinal) { $sql .= sprintf(" WHEN %d THEN
    $display_order=array(23687=>'23687ff',23684=>'23684ff');
    $city=array(23687=>'23687ffxx',23684=>'23684ffxx'); 	  	 
    	 $ids =implode(',', array_keys($display_order));
    	 $sql= "UPDATE table SET name= CASE id";//name 某列 
    	 foreach ($display_order as $id => $ordinal) {
    	     $sql .= sprintf(" WHEN %d THEN '%s' ", $id, $ordinal);// 拼接SQL语句 
    	 }
    	 $sql .="END,title = CASE id ";
    	 foreach ($city as $cityId => $cityVal) {	 
    	     $sql .= sprintf(" WHEN %d THEN '%s' ", $cityId, $cityVal);// 拼接SQL语句 
    	 }
    	 $sql .= "END WHERE id IN ($ids)";
    

    https://blog.csdn.net/guoshenglong11/article/details/38543005?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522161764082716780265469957%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=161764082716780265469957&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-1-38543005.pc_search_result_cache&utm_term=php+mysql%E6%9B%B4%E6%94%B9%E5%A4%9A%E6%9D%A1%E8%AF%AD%E5%8F%A5

    展开全文
  • 看起来,语法是完全没有问题,MySQL官方文档的update语法:看到assignment_list的格式是以逗号分隔的col_name=value列表,一下子豁然开朗,开发同学想要的字段更新语句应该这样写:小结:在一条UPDAT...

    在MySQL里面update一条记录,语法都正确的,但记录并没有被更新...

    问题语句

    79638f22ef8b65af4178c31bbcaac44e.png

    执行之前的记录是这样的:

    947b03d5385713ae9a6fe1aed296f324.png

    执行之后的记录是这样的:

    5e2fbde309faf2e9c215457f67079a2a.png

    可以看到,实际上是有效果的:

    8df061b48f8a38fed4c0ff14c56720ad.png

    why?

    看起来,语法是完全没有问题,MySQL官方文档的update语法:

    4faf7e8711424737990337a940221b7a.png

    看到assignment_list的格式是以逗号分隔的col_name=value列表,一下子豁然开朗,开发同学想要的多字段更新语句应该这样写:

    f77df46e96c4a3e4815faa899d98b2b2.png

    小结:在一条UPDATE语句中,如果要更新多个字段,字段间不能使用“AND”,而应该用逗号分隔。

    原理:为什么使用“AND”分隔的时候,会出现owner_code=0的奇怪结果? 多次尝试之后发现:

    114068bfc1c404727701998e51a82bf6.png

    39152158159e8170c44295f74fe1b860.png

    而("43212" and owner_name="李四")是一个逻辑表达式,而这里不难知道owner_name并不是‘李四"。因此,这个逻辑表达式的结果为false,false在MySQL中等价于0!

    到此这篇关于mysql update修改多个字段and的语法问题的文章就介绍到这了,更多相关mysql update修改字段and语法内容请搜索云海天教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持云海天教程!

    原文链接:https://www.cnblogs.com/alomsc/p/10967571.html

    展开全文
  • MySQL UPDATE语句介绍

    千次阅读 2021-01-18 22:58:58
    UPDATE语句修改表中的现有数据。UPDATE可以修改单行或多行的一或多个列中的数据。UPDATE语句的基本语法:UPDATE [LOW_PRIORITY] [IGNORE] table_nameSETcolumn_name1 = expr1,column_name2 = expr2,...[WHERE...
  • 主要介绍了Mysql update多表联合更新的方法小结,通过实例代码给大家介绍了mysql多表关联update语句,感兴趣的朋友跟随小编一起看看吧
  • 修改多表的记录 92语法 UPDATE 表1 别名,表2 别名 SET 列=值 WHERE 筛选条件 AND 筛选条件 99语法 UPDATE 表1 别名 INNER\LEFT\RIGHT JOIN 表2 别名 ON 连接条件 SET 列=值 WHERE 筛选条件 AND 筛选条件
  • mysql update语句的用法 首先,以单表的 UPDATE 语句,学习下 MySQL update 语句用法。 一,单表的 MySQL UPDATE 语句: UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2 ...] ...
  • MySQL语句修改之关联update语句用法

    千次阅读 2021-01-27 06:09:14
    在数据库里有专门用于修改语句,一起来看下吧~关于语法以下是 UPDATE 命令修改 MySQL 数据表数据的通用SQL语法:UPDATEtable_nameSETfield1=new-value1,field2=new-value2[WHEREClause]小结1)你可以同时更新一或...
  • MySQL update 语句的正确用法

    千次阅读 2021-02-06 16:09:32
    以下的文章主要介绍的MySQLupdate 语句的实际用法,我们首先是以单表的UPDATE语句来引出实现MySQL update 语句的实际方案,以下就是文章的详细内容描述,望你看完之后会有收获。单表的MySQL UPDATE语句:UPDATE[LOW_...
  • 第一时间送达干货起因最近好几次有开发同学在钉钉上问我,比如下图:问题归纳起来就是:在MySQL里面update一条记录,语法都正确的,但记录并没有被更新…结论小结:在一条UPDATE语句中,如果要更新多个字段,字段间...
  • mysql update改动条数据

    千次阅读 2021-01-18 18:58:43
    通常情况下,我们会使用下面SQL语句来更新字段值:UPDATE mytable SET myfield='value' WHERE other_field='other_value';可是,假设你想更新多行数据,而且每行记录的各字段值都是各不一样,你会怎么办呢?举样例...
  • 用于操作数据库的SQL一般分为两种,一种是查询语句,也就是我们所说的SELECT语句,另外一种就是更新语句,也叫做数据操作语句。SQL语句中的更新语句update是最...在MySQL中又了一REPLACE语句,因 此,本文以MySQL
  • Mysql update语句赋值嵌套select

    千次阅读 2021-01-19 00:22:18
    MySQL课程练习中题目遇到Mysql update语句赋值嵌套select语句如下:update tc_sc set score=(select avg(tc_sc.score) from tc_sc,tb_teacher,tb_course where tc_sc.cid=tb_course.cid and tb_course.tid=tb_...
  • 使用update语句可以批量修改替换某个字段的数据,可以使用replace进行替换所需的数据值 REPLACE(字段,“替换前字段的值”,“替换后字段的值”) 方法如下: updatesfk_postmeta SET meta_value = REPLACE( meta_...
  • mysql update语句锁行还是锁表?

    千次阅读 2022-05-25 15:01:12
    mysql update语句锁行还是锁表?
  • mysql update 批量修改

    千次阅读 2021-11-11 14:43:43
    mysql 批量更新如果一条条去更新效率是相当的慢, 循环一条一条的更新记录,一条记录update一次,这样性能很差,也很容易造成阻塞。 mysql 批量更新共有以下四种办法 1、.replace into 批量更新 replaceintotest_...
  • MySQL中的表进行批量update的时候,如果每记录用一个update语句,5000条记录的话,大概需要30秒钟。下面采用的case when方法可以把5000条update拼成一条:Update myTableSET myField = CASE idWHEN 1 THEN '...
  • mysql update语句的用法详解

    千次阅读 2021-01-18 21:12:50
    本文详细介绍了,mysqlupdate语句的用法,系统全面的学习下update更新语句的用法,有需要的朋友可以参考下首先,单表的UPDATE语句:UPDATE [LOW_PRIORITY] [IGNORE] tbl_nameSET col_name1=expr1 [, col_name2=...
  • mysql中的update语句怎么使用

    千次阅读 2021-01-19 09:26:43
    mysql中的update语句的用法:【UPDATE table_name SET ...update语句用来修改或更新mysql中的数据。update语法Single-table语法:UPDATE [LOW_PRIORITY] [IGNORE] tbl_nameSET col_name1=expr1 [, col_name2=expr...
  • MySQL UPDATE 更新

    2020-12-16 16:37:42
    你可以同时更新一个或多个字段。 你可以在 WHERE 子句中指定任何条件。 你可以在一个单独表中同时更新数据。 当你需要更新数据表中指定行的数据时 WHERE 子句是非常有用的。 通过命令提示符更新数据 以下我们将在 ...
  • MySQL数据库update语句使用详解

    千次阅读 2021-03-04 00:06:53
    本篇文章我们来讲讲如何对MySQL数据库进行更新操作,对数据库进行增删改查操作是我们必会的基础之一,会了这增删改查我们可以在这基础上去编写更的东西,废话不说了,我们来看一下本篇文章的内容吧!...
  • BLOB(binary large object),二进制大对象,是一可以存储二进制文件的“容器”。在计算机中,BLOB常常是数据库中用来存储二进制文件的字段类型。 本文介绍php操作的方式 blob类型数据可以直接当成字符串类型写入...
  • 如何将update语句合并为一条

    千次阅读 2021-01-19 15:39:35
    需求:如何将update语句合并为一条update语句:如,updatetable1setcol='2012'whereid='2014001'updatetable1setcol='1009'whereid='2014003'如何合并为一条?在网上找了好久,总结了一相对简单的语句(有些...
  • mysql使用UPDATE更新语句

    千次阅读 2020-08-22 11:49:02
    基础语法:UPDATE table_name set a= value1,set b = value2 WHERE (条件) 但有时候情况比较复杂,涉及到嵌套查询 如下所示,被赋值的内容需要查询才能得到,就需要在嵌套一层。不然就会报错。 UPDATE rim_rp_...
  • MySQL对数据的基本操作三:UPDATE语句

    千次阅读 2021-04-05 22:19:39
    一:UPDATE语句简介 二:案例:不涉及表连接 的案例(这部分不难) 三:案例:涉及表连接 一:UPDATE语句简介 ●UPDATE子句,选择要修改的表;UPDATE子句只执行一次; ●IGNORE关键字可写可不写,作用是在写入...
  • MySQL——update 语句执行流程

    千次阅读 2022-02-10 09:38:09
    并把操作的物理数据页修改记录到 redo log buffer 里,由于 update 这个事务会涉及到多个页面的修改,所以 redo log buffer 里会记录多条页面的修改信息。因为 group commit 的原因,这次事务所产生的 redo log ...
  • 1、使用sql语句更新多个字段时: updateappsset student_number='43210'and student_name='李四'wherestudent_number='13245'andstudent_name='张三'; 执行之前:student_number='13245'andstudent_name='张三';...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 195,227
精华内容 78,090
热门标签
关键字:

mysqlupdate语句修改多个

mysql 订阅