文章詳情頁
關于設計mysql中一個字段自增的函數。
瀏覽:210日期: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. javascript - sublime快鍵鍵問題2. javascript - immutable配合react提升性能?3. Apache 已經把網站根目錄的改為allow from all了,但是服務器還是不能訪問?4. 配置Apache時,添加對PHP的支持時語法錯誤5. phpstudy8.1支持win11系統嗎?6. css - 寫頁面遇到個布局問題,求大佬們幫解答,在線等,急!~7. vue.js - Vue 如何像Angular.js watch 一樣監聽數據變化8. javascript - nodejs關于進程間發送句柄的一點疑問9. 實現bing搜索工具urlAPI提交10. javascript - 移動端上不能實現拖拽布局嗎?
排行榜

網公網安備