文章详情页
关于设计mysql中一个字段自增的函数。
浏览:39日期:2022-06-10 17:40:44
问题描述
我有一个简单的表,有三个字段,tag_id,user_id,user_tag_id,我想当我插入一条记录(插入已知的tag_id和user_id)时,user_tag_id要在user_id=当前插入的user_id的条件下的自增1,这个怎么实现,是要写mysql的自定义函数么?
问题解答
回答1:DELIMITER $$DROP TRIGGER IF EXISTS after_insert_table $$CREATE TRIGGER after_insert_tableAFTER INSERT on tableFOR EACH ROWBEGIN update table t set t.user_tag_id = t.user_tag_id+1 where t.user_id=new.user_id ;END $$DELIMITER ;回答2:
如果只是新插入的记录中user_tag_id加1,可以分成两个sql语句:
首先计算user_id对应user_tag_id的最大值
select max(user_tag_id) + 1 from t1 where user_id = :user_id
然后把上个语句的返回值,放到insert语句中就可以了。
相关文章:
1. dockerfile - 我用docker build的时候出现下边问题 麻烦帮我看一下2. java - SpringMvc没有根据&符号截取参数3. javascript - 粘贴一段带有图片和文字的内容,如何使用js实现获取图片并上传到服务器?4. java编程思想第4版中文版的几处谬误?5. java - Android Studio编译打包Apk出现错误6. mongodb的java开发中使用两个字段相等查询条件应该怎么写?7. java - C语言的一道算法题-兄弟郊游问题 求解?8. Mongodb web连接28017后,提示登录的用户名密码在 db那里预设置9. java - 做数据库向手机端的推送要系统地学习哪些知识?求大神指点,谢谢!10. java - jdbc无法连接postgresql数据库
排行榜
![dockerfile - 我用docker build的时候出现下边问题 麻烦帮我看一下](http://www.haobala.com/attached/image/news/202311/1028095cc6.png)