社区
MySQL
帖子详情
mysql的on duplicate key update 如何用子查询代替
DrSmart
2014-06-25 05:23:24
关系数据库中mysql的on duplicate key update 如何用子查询代替,用了后发现 id主键自增太快,如何用子查询(一个sql语句)代替来解决下面的例子
INSERT INTO test(name) VALUES ('user') ON DUPLICATE KEY UPDATE name='user'
...全文
409
8
打赏
收藏
mysql的on duplicate key update 如何用子查询代替
关系数据库中mysql的on duplicate key update 如何用子查询代替,用了后发现 id主键自增太快,如何用子查询(一个sql语句)代替来解决下面的例子 INSERT INTO test(name) VALUES ('user') ON DUPLICATE KEY UPDATE name='user'
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
WWWWA
2014-06-26
打赏
举报
回复
建议用2条SQL语句解决
DrSmart
2014-06-26
打赏
举报
回复
嗨,看来还是传统方式查询吧, mysql这设计的好2啊。
ACMAIN_CHM
2014-06-25
打赏
举报
回复
无好方法,建议使用两个语句先 update a,b set a.name=b.name where a.id=b.id insert into a (name) select name from b where id not in (select id from a)
码无边
2014-06-25
打赏
举报
回复
select max(id) from tb limit 1
DrSmart
2014-06-25
打赏
举报
回复
环境 mysql 5.5 还有啥可行的方法没,嘿嘿
rucypli
2014-06-25
打赏
举报
回复
跳id本身就数据库为了更高的效率才执行的 可以把mysql降到5.0的版本就不跳了
DrSmart
2014-06-25
打赏
举报
回复
有唯一索引,主要问题是防止id自增,replace什么的,id都自增很蛋疼,就是说保持数据内容不变时,本条id不增加,下一条插入的id也连续, ON DUPLICATE KEY UPDATE虽然本条id变但下一条的id还是跳过去了
wwwwb
2014-06-25
打赏
举报
回复
USER上有没有索引?参考REPLACE INTO
MySQL
表的CRUD操作详解及实践案例
内容概要:本文详细介绍了
MySql
表的基本操作,涵盖CRUD四个维度。Create主要涉及数据的新增、主键或唯一键的特殊处理方法如ON
DUPLI
CAT
E
KEY
UPDATE
和 REPLACE INTO。Retrieve部分讲解了基于SELECT语句的数据查询技巧,重点在于WHERE条件的选择与构造,ORDER BY字段来排序结果集,以及LIMIT关键字用于控制查询结果的数量。
Update
章节说明了
UPDATE
命令的应用场景和基本语法。最后Delete部分讨论了DELETE和TRUN
CAT
E TABLE的区别及其各自的特点。文章还特别强调了复杂操作——插入
子查询
结果,以及如何利用聚合函数COUNT、SUM、AVG、MAX、MIN进行分组统计分析。 适合人群:对于
MySQL
有一定了解但希望深入掌握具体操作技术的初学者和中级开发者。 使用场景及目标:通过学习,读者能够熟练地完成数据的增删改查等日常任务,并能运用更复杂的SQL语句解决实际工作中遇到的各种问题,提高工作效率和数据处理能力。 阅读建议:由于文中包含了丰富的案例示例,强烈推荐在实际环境上动手操作,边学边练。
mysql
8.0 JDBC驱动
MySQL
是一种开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。
mysql
一次更新(
update
)多条记录的思路
工作中遇到一个问题:要更新一个数据表。 这个表是我自己创建的,有7个字段,id、name、package等等 创建的时候,因为我把name、package的信息分别存在两个文本文件中, 所以我就用Insert方法,一次性将所有的name插入数据库中。 name全部导入数据库中了,但是我的package没有导入,这时我仍然想用insert的方法插入,但是不行。 这时候应该利用
update
的方法。一次更新多条信息的思路如下:
UPDATE
table_name SET field_name = CASE other_field WHEN 1 THEN 'value' WHEN 2 THEN '
mysql
记录不存在时插入 记录存在则更新的实现方法
相信很多人都需要用到这个语句,请看下文:(在4.1以后的版本才有效)
mysql
-8.0.30-winx64.zip
MySQL
是一个关系型数据库
MySQL
56,940
社区成员
56,756
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章