MYSQL UPDATE 更新 技术教程文章

MySQL更新加入限制【代码】

我想知道如何使用另一个表中的值更新表,技巧是我需要设置限制因为我有数千行要更新,而且PHPmyadmin无法处理该负载. (我没有直接访问服务器) 我的表结构看起来像这样 wp_postmeta meta_id,POST_ID,meta_key,meta_value wp_map oldmap,newmap 我需要做的是在wp_postmeta.meta_value和wp_map.oldmap上加入两个表,并用wp_map.newmap更新wp_postmeta.meta_value. 这是我当前的查询,但我需要在查询中添加一个LIMIT为100,因为我将查询拆分...

最清晰易懂的Mysql CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP区别【图】

timestamp数据类型 Mysql数据库中,当字段类型为timestamp(时间戳)时,如果默认值取CURRENT_TIMESTAMP,则在insert一条记录时,此时的值自动设置为系统当前时间,一般做创建字段用(create_time) 如果是 ON UPDATE CURRENT_TIMESTAMP ,则时间字段会随着update命令进行实时更新,即当此条数据的其他字段发生变化时,此时字段的值自动更新为最新的时间,一般做更新字段用(update_time)。 总结: CURRENT_TIMESTAMP:记录数据创...

MySQL – 每组包含行号的更新表【代码】

样本数据id | order_id | instalment_num | date_due --------------------------------------------------------- 1 | 10000 | 1 | 2010-07-09 00:00:00 2 | 10000 | 1 | 2010-09-06 11:39:56 3 | 10001 | 1 | 2014-04-25 15:46:52 4 | 10002 | 1 | 2010-01-11 00:00:00 5 | 10003 | 1 | 2010-01-04 00:00:...

mysql – 根据其他2列的值更新列【代码】

我有user_contents表.这是DDLCREATE TABLE `user_contents` (`id` int(11) NOT NULL AUTO_INCREMENT,`user_id` int(11) NOT NULL,`content_type` int(11) NOT NULL,`order_id` int(11) DEFAULT '0',PRIMARY KEY (`id`),KEY `user_id` (`user_id`),CONSTRAINT `user_contents_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) )order_id是新添加的列.我需要根据content_type和user_id的值更新order_id的值. content_type可...

在mysql中尝试跨数据库更新时找不到列【代码】

我正在尝试将一个mysql数据库中的列的内容复制到另一个mysql数据库中的相同表. 我正在使用:UPDATE db1.table SET db1.table.name = db2.table.name, db1.table.address = db2.table.address WHERE db1.table.id = db2.table.id;我收到错误1054:’where子句’中的未知列’db2.table.id’. 两个表都有一个id列,所以我不确定它为什么不起作用.我以管理员身份登录,并拥有两个数据库的完全权限.解决方法: UPDATE db1.table JOIN ...

mysql – 如何更新表中的所有日期【代码】

我有一张包含500万条DATETIME记录的表格.我想为表中的所有各种日期时间添加一年.我可以通过一个查询完成所有操作吗?就像是:SELECT DATE_ADD(*, INTERVAL 1 YEAR);或者您推荐的任何其他方式.谢谢!解决方法:这应该做你想要的:UPDATE table SET datefield = DATE_ADD(datefield, INTERVAL 1 YEAR);如果需要更新数据库中的每个表,请检查this question的答案

MySQL数据库时间设置自动添加时间和自动更新时间【代码】【图】

说明: MySQL字段中设置时间字段自动添加创建时间和自动更新时间设置,设置字段类型为:timestamp 默认值设置为current_timestamp(),更新时间字段字段类型为:timestamp 默认值设置为 current_timestamp() ON UPDATE current_timestamp() SQL语法和实例 create table tb_name(join_time timestamp NULL DEFAULT current_timestamp(),update_time timestamp NULL DEFAULT current_timestamp() ON UPDATE current_timestamp()) CREATE T...

为什么mysql INSERT … ON DUPLICATE KEY UPDATE可以破坏主/主配置上的RBR复制【代码】

这是问题所在: > 2台MySQL 5.5服务器>基于行的复制主控>写入两台服务器(均为活动)> autoinc技巧(1个服务器奇数,另一个甚至) 我有一张桌子 byUserDailyStatistics: > id(PK AUTO INC)>约会> idUser> metric1> metric2> UNIQUE(idUser,date) 所有要求都是INSERT INTO byEmailDailyStatistics (date, idUser, metric1, metric2) VALUES (:date, :user:, 1, 1) ON DUPLICATE KEY UPDATE metric1 = metric1 + 1, metric2 = metric2 +1...

来自同一个表的MYSQL更新值【代码】

我有这张桌子id child_id root_id ==================== 1 0 0 2 0 1 3 0 2我想更新一行并将child_id更改为特定行的id,并将root_id作为其id. 我试过这个mysql语句UPDATE table SET child_id = id WHERE id = root_id;我想要的输出示例是id child_id root_id ==================== 1 2 0 2 3 1 3 0 2解决方法: update t1 set t1.child_id = t2.id from tab...

mysql – 从单个查询更新大表时,SQL NOW()函数是动态的还是静态的?【代码】

如果我编写单个SQL语句来更新非常大的MySQL数据库表上的日期字段,那么SQL NOW()函数的输出动态是因为它在运行时随时间变化,或者对于每个数据字段保持不变并使用它它的开始时间? IE浏览器;将:UPDATE `table` SET `date` = NOW()总是在所有领域产生相同的结果(例如2016-10-17 15:33:10),无论它是否需要< 1秒或1小时处理?如果它是动态的.我希望得到一些帮助来创建一个声明,而不是.解决方法:它确实对每个数据字段保持相同并使用执行...

mysql UPDATE表示列不能为空.为什么它为空?【代码】

我有一个名为carrier_rects的连接表,如下所示:+------------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+------------------+------+-----+---------+----------------+ | id | int(11) unsigned | NO | PRI | NULL | auto_increment | | carrier_id | int(11) unsigned | NO | | NULL | ...

mysql – 表名称指定两次作为更新目标和单独的数据源【代码】

Update table Set class = 0 Where TOTAL_HOURS = (SELECT min (TOTAL_HOURS) from tutions);产生错误:Table name specified twice both as a target for update and separate source for data.我怎样才能解决这个问题?解决方法:我猜你正试图用tutions更新tutions. 创建一个嵌套的子查询,以便MySQL实现它并且不再是同一个表. 试试这个:Update tutions Set class = 0 Where TOTAL_HOURS = (select * from (SELECT min (TOTAL_...

mysql – 外键的Django ON UPDATE设置?

为什么Django没有外键的ON UPDATE设置? ForeignKey模型只有on_delete.解决方法:原因与任何产品缺乏任何功能的原因相同 – 还没有人实现过. 我猜想on_update比on_delete更不常用,因为使用自动增量id作为主键很受欢迎,这通常不需要更新.所以on_update的功能没有实现. Django跟踪器中有一些功能请求: > https://code.djangoproject.com/ticket/21265(关闭wontfix)> https://code.djangoproject.com/ticket/21295(接受补丁) 我不知道...

如何提高MySQL INSERT和UPDATE的性能?

我们的数据库中INSERT和UPDATE语句的性能似乎在降低,并导致我们的Web应用程序性能不佳. 表是InnoDB,应用程序使用事务.我可以做些简单的调整来加快速度吗? 我想我们可能会看到一些锁定问题,我怎么能找到?解决方法:>你可以change the settings加速InnoDB的插入.>和even more ways to speed up InnoDB> …还有一个优化article

MySQL:从子查询结果更新表列【代码】

在Members表上有“MemberID”和“PointsEarned”列. 我想从此查询的结果更新PointsEarned列:SELECT m.MemberID, m.UserName, ( (SELECT COUNT(*) FROM EventsLog as e WHERE e.MemberID=m.MemberID AND e.EventsTypeID=2)*10 ) + ( (SELECT COUNT(*) FROM EventsLog as e WHERE e.MemberID=m.MemberID AND e.EventsTypeID=3)*3 ) +( (SELECT COUNT(*) FROM ChatMessages as c WHERE c.MemberID=m.MemberID)*.1 )as PointsEarnedFR...

如何加速MySQL INSERT / UPDATE?

我有三个大的MySQL表.他们接近200万条记录.其中两个表是InnoDB,目前大小约为500 MB.另一个表是MyISAM,大约是2.5 GB. 我们从FileMaker运行一个导入脚本来插入和更新这些表中的记录,但最近它变得非常慢 – 每小时只插入几百条记录. 我可以做些什么来提高性能以使插入和更新更快地发生?解决方法:对于INSERT,它可能与您在表上定义的索引有关(它们必须在每次INSERT后更新).你能发布更多关于它们的信息吗?表上是否设置了触发器? 对于更...

Mysql update后insert造成死锁原因分析及解决【代码】

系统中出现死锁的日志如下:*** (1) TRANSACTION: TRANSACTION 1331088253, ACTIVE 0 sec inserting mysql tables in use 1, locked 1 LOCK WAIT 7 lock struct(s), heap size 1184, 3 row lock(s), undo log entries 4 MySQL thread id 14699751, OS thread handle 0x7fc5eaeda700, query id 382901670 172.18.140.10 bms update INSERT INTO `finance_settlement_detail` (`order_detail_id`, `tenant_id`, `store_id`, `order_i...

mysql – 合并和更新主键【代码】

我看了,但没有找到解决方案似乎是一个简单的问题. 我有很多具有相同结构的表,并希望合并它们.唯一的问题是它们都有一个id字段作为主键.主键中会有很多重复项. id到底是什么并不重要.如何合并所有表,以便我不会丢失任何数据?解决方法:在新表中创建一个AUTO_INCREMENT字段,并从值列表中省略它:CREATE TABLE NEW_TABLE (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, col1 …, col2 …, …);INSERT INTO new_table (col1, col2, ...

如何在没有UNIQUE索引或PRIMARY KEY的MySQL中使用ON DUPLICATE KEY UPDATE?【代码】

MySQL手册说明:If you specify ON DUPLICATE KEY UPDATE, and a row is inserted thatwould cause a duplicate value in a UNIQUE index or PRIMARY KEY如果您的表没有UNIQUE索引或PRIMARY KEY,但您不想复制列的条目(例如user_id),该怎么办? 有没有办法在MySQL中做到这一点?解决方法: INSERT INTO `table` (value1, value2) SELECT 'stuff for value1', 'stuff for value2' FROM `table` WHERE NOT EXISTS (SELECT * FROM `ta...

Mysql – 尝试更新时间戳列时.它无法更新【代码】

我想我可能在mysql中遇到过一个bug,或者只是我做错了. 过去四个月我一直在使用相同的特定查询,就在今天它以某种方式停止工作.我看不出问题. 我正在mysql控制台中执行这些查询,它工作得很好,并且该字段正在更新.但是当PHP执行这些查询时,它会失败. 将记录插入表(带有两个时间戳字段)后,我正在尝试更新特定的时间戳列. 但不幸的是它无法更新专栏. 查询进展顺利(没有错误),但时间戳列中的值仍然保持不变.这很奇怪,因为当我将初始列值保...