文章詳情頁
關于設計mysql中一個字段自增的函數。
瀏覽:123日期: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. python執行cmd命令,怎么讓他執行類似Ctrl+C效果將其結束命令?2. python - Flask寫的注冊頁面,當注冊時,如果填寫數據庫里有的相同數據,就報錯3. python - Django有哪些成功項目?4. python - scrapy url去重5. 實現bing搜索工具urlAPI提交6. MySQL主鍵沖突時的更新操作和替換操作在功能上有什么差別(如圖)7. mysql在限制條件下篩選某列數據相同的值8. 關于mysql聯合查詢一對多的顯示結果問題9. 數據庫 - Mysql的存儲過程真的是個坑!求助下面的存儲過程哪里錯啦,實在是找不到哪里的問題了。10. Python從URL中提取域名
排行榜
