Mysql问题,创建唯一ID
现有一张表,名(topic)
id tid sid title content
id为自增,现在需要创建一个基于sid的自增id,如下图所示
第一条数据
id(1),sid(1),tid(T_1),title(标题),content(内容)
第二条数据
id(2),sid(1),tid(T_2),title(标题),content(内容)
第三条数据
id(3),sid(1),tid(T_3),title(标题),content(内容)
第四条数据
id(4),sid(2),tid(T_1),title(标题),content(内容)
第五条数据
id(5),sid(2),tid(T_2),title(标题),content(内容)
一般来说tid
SELECT COUNT(sid) FROM topic
就能得到sid发布内容的数量
然后结果+1,即可
但是这样有概率会重复(我猜的),也不能删除数据,如果删除第四条再插入就会变成tid = T_2
或者用子SQL
用MAX(tid)然后在。。。。
想不通
不过有个简单的方法就是数据不能真的删除,做个逻辑删除,但实际上这条数据还在数据库只不过被标记为删除,不展示出来。加个字段delete来标记即可,count的时候被标记为删除的也统计进去!!!