V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Bob
V2EX  ›  问与答

怎么样批量修改sql数据库的值

  •  
  •   Bob · 2013-01-16 18:50:27 +08:00 · 2943 次点击
    这是一个创建于 4123 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如何把title 下的值a,b,c,d,.....z。
    修改成a1,b1,c1,d1,....z1。
    或者说用什么好用工具嘛。
    6 条回复    1970-01-01 08:00:00 +08:00
    ljbha007
        1
    ljbha007  
       2013-01-16 19:08:45 +08:00
    以前改过 有个mysql的模块可以使用正则 然后替换掉就好了
    jacy
        2
    jacy  
       2013-01-16 20:06:21 +08:00
    如果就是lz所说的这个,可以自己写段代码
    Bob
        3
    Bob  
    OP
       2013-01-17 09:49:26 +08:00
    不会写代码呀 因为是批量修改,有几万各表那么多,靠手工明显就是不靠谱的事情
    laoyuan
        5
    laoyuan  
       2013-01-23 21:04:52 +08:00
    就是给title加个后缀,我理解的对么?

    update table set title = (title,'1')
    concat 就是连一块的意思,
    qiayue
        6
    qiayue  
       2013-01-23 22:21:49 +08:00
    用这种形式批量update,自己拼接sql,速度还不错

    UPDATE 'mytable' SET
    'name' = CASE
    WHEN 'title' = 'My title' THEN 'My Name 2'
    WHEN 'title' = 'Another title' THEN 'Another Name 2'
    ELSE 'name' END,
    'date' = CASE
    WHEN 'title' = 'My title' THEN 'My date 2'
    WHEN 'title' = 'Another title' THEN 'Another date 2'
    ELSE 'date' END
    WHERE 'title' IN ('My title','Another title')
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2264 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 06:09 · PVG 14:09 · LAX 23:09 · JFK 02:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.