免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3918 | 回复: 1
打印 上一主题 下一主题

id自增,如何修改session_id为空置为上记录的session_id [复制链接]

论坛徽章:
3
程序设计版块每日发帖之星
日期:2016-02-27 06:20:00程序设计版块每日发帖之星
日期:2016-03-03 06:20:00数据库技术版块每日发帖之星
日期:2016-05-06 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-05-20 14:51 |只看该作者 |倒序浏览
库表结构
id      session_id      name         
1          1               张三   
2                           张三
3          2               张三
4                           张三
5                           张三
6          3               张三
7                           张三
8                           张三
9                           张三
10                         张三
11        4               张三
12                         张三

我想把id为2的第2条session_id 值置为1
id为4、5的session_id 值置为2
id为7、8、9、10的session_id 值置为3
id为12的session_id 值置为4

求各位指教,非常感谢

论坛徽章:
93
2015年辞旧岁徽章
日期:2019-10-10 10:51:15CU大牛徽章
日期:2014-02-21 14:21:56CU十二周年纪念徽章
日期:2020-10-15 16:55:55CU大牛徽章
日期:2014-02-21 14:22:07羊年新春福章
日期:2019-10-10 10:51:39CU大牛徽章
日期:2019-10-10 10:55:38季节之章:春
日期:2020-10-15 16:57:40ChinaUnix元老
日期:2019-10-10 10:54:42季节之章:冬
日期:2019-10-10 10:57:17CU大牛徽章
日期:2014-02-21 14:22:52CU大牛徽章
日期:2014-03-13 10:40:30CU大牛徽章
日期:2014-02-21 14:23:15
2 [报告]
发表于 2016-05-20 16:48 |只看该作者
回复 1# bzh_516


先生成数据吧,然后再回导就可以了:
  1. mysql> set @last_id := -1;
  2. set @new_session_id := -1;

  3. select id, new_session_id, name
  4. from
  5. (
  6.         select *, @new_session_id := ifnull(session_id, @last_id) as new_session_id, @last_id := @new_session_id
  7.         from tbtest
  8. ) as tmp;
  9. Query OK, 0 rows affected

  10. Query OK, 0 rows affected

  11. +----+----------------+------+
  12. | id | new_session_id | name |
  13. +----+----------------+------+
  14. |  1 |              1 | 张三 |
  15. |  2 |              1 | 张三 |
  16. |  3 |              2 | 张三 |
  17. |  4 |              2 | 张三 |
  18. |  5 |              2 | 张三 |
  19. |  6 |              3 | 张三 |
  20. |  7 |              3 | 张三 |
  21. |  8 |              3 | 张三 |
  22. |  9 |              3 | 张三 |
  23. | 10 |              3 | 张三 |
  24. | 11 |              4 | 张三 |
  25. | 12 |              4 | 张三 |
  26. +----+----------------+------+
  27. 12 rows in set
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP