帝国论坛帝国网站管理系统交流区帝国CMS使用交流[求助][求助]怎么用SQL语句,通过一个字段条件判断来改修另一个字段的值? 【本版专题贴子】  
主题:[求助][求助]怎么用SQL语句,通过一个字段条件判断来改修另一个字段的值? [加入收藏夹]   

chengwen
用户头衔:举人

精华贴   :0
发贴数   :32
经验值   :712
注册时间:2007-09-27
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 1 楼]
[求助][求助]怎么用SQL语句,通过一个字段条件判断来改修另一个字段的值?
怎么用SQL语句,通过一个字段条件判断来改修另一个字段的值?
在phome_ecms_news_data_2数据表中将满足所有在phome_ecms_news数据表中自建字段“cengci=初中 ”  的数据的newstext中某些字符替换掉

UPDATE `phome_ecms_news_data_2` SET `newstext`= replace(newstext,'111','2222') where `phome_ecms_news_data_2`.id in(select id from `phome_ecms_news` where cengci='初中')


出错了,结果出错了




2021-03-01 15:39:19 已设置保密 顶部 回复 引用 报告 编辑 删除

csdn2
用户头衔:探花

精华贴   :0
发贴数   :4560
经验值   :13362
注册时间:2013-11-21
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 2 楼]

提示什么?




2021-03-01 16:09:37 已设置保密 顶部 回复 引用 报告 编辑 删除

chengwen
用户头衔:举人

精华贴   :0
发贴数   :32
经验值   :712
注册时间:2007-09-27
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 3 楼]

原帖由 csdn2 于 2021-03-01 16:09:37 发表
提示什么?

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') AND (`newstext` <> replace(newstext,'111','2222'))' at line 1




2021-03-01 16:47:42 已设置保密 顶部 回复 引用 报告 编辑 删除

csdn2
用户头衔:探花

精华贴   :0
发贴数   :4560
经验值   :13362
注册时间:2013-11-21
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 4 楼]

你上面没看到有AND




2021-03-01 17:22:17 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :3057
经验值   :8745
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 5 楼]

UPDATE `phome_ecms_news_data_2` SET `newstext`= replace(newstext,'111','2222')  where  id in(select id from `phome_ecms_news` where cengci='初中')



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2021-03-01 20:51:00 已设置保密 顶部 回复 引用 报告 编辑 删除

chengwen
用户头衔:举人

精华贴   :0
发贴数   :32
经验值   :712
注册时间:2007-09-27
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 6 楼]

原帖由 jiuhecai 于 2021-03-01 20:51:00 发表
UPDATE `phome_ecms_news_data_2` SET `newstext`= replace(newstext,'111','2222')  where  id in(sel...

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') AND (`newstext` <> replace(newstext,'111','2222'))' at line 1

一样的报错,
顺便说一下:是在phpMyAdmin 版本信息: 5.1.0 (已更新)  运行测试的




2021-03-01 20:57:11 已设置保密 顶部 回复 引用 报告 编辑 删除

chengwen
用户头衔:举人

精华贴   :0
发贴数   :32
经验值   :712
注册时间:2007-09-27
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 7 楼]

找到原因了,最后是小括号,输成中文的了




2021-03-02 00:02:47 已设置保密 顶部 回复 引用 报告 编辑 删除

500919
用户头衔:探花

精华贴   :0
发贴数   :11660
经验值   :31188
注册时间:2009-03-02
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 8 楼]

原帖由 chengwen 于 2021-03-02 00:02:47 发表
找到原因了,最后是小括号,输成中文的了

这么不小心,拼音切换早了啊




2021-03-03 07:52:12 已设置保密 顶部 回复 引用 报告 编辑 删除

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1