mysql更新某个字符串字段的部分内容

如果现在需要Mysql更新字段重部分数据,而不是全部数据,应该采用何种方法呢?下面介绍了两种情况下Mysql更新字段中部分数据的方法,供您参考。

Mysql更新字段中部分数据第一种情况:

update tab set     A   = concat(substring(A,1,3),‘bbb‘);

从A的1个字符开始取3个字符,加上‘bbb‘,再写入a中,如果A原始值为‘123aaa‘,那么更新之后为‘123bbb‘了。

Mysql更新字段中部分数据第二种情况:

1.Mysql模糊查询:

select * from table where num like ‘%a%‘; 
查询有a的字符串2.Mysql更新字段值的部分数据:

我们可能会在项目中碰到要求将数据库中某个字段的值修改成另外一个,那么大家可能会马上想到用update.举例说明:

将字段A中的值为1的,全部替换成2.
SQL语句就是这么写:update table set a=2 where a=1;

那么如果我们要讲字段A值中的包含的1,替换成2呢?
例如:a=2211,现在要替换成2222,就是把1换成2
SQl语句这么写:update table set a=REPLACE(a,‘1‘,‘2‘);

时间: 2024-08-25 22:59:53

mysql更新某个字符串字段的部分内容的相关文章

mysql 在查字符串字段中 条件参数传为数字0查到与实际数据不匹配问题

比如: CREATE TABLE `e` ( `id` int(11) DEFAULT NULL, `status` varchar(255) DEFAULT NULL, `b` varchar(255) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8; 用数字查字符串会把字符串数据转化为数字开头,所有非数字开头字符串都是以0开头 故查到以下数据 用数字2查则匹配到2开头的字符串 用和数据类型相同的条件查则没有问题 总结: mysql 中:用数据

mysql替换字段里数据内容部分字符串

mysql替换表的字段里面内容,如例子: mysql> select host,user from user  where user='testuser'; +-----------------------+----------+| host                  | user     |+-----------------------+----------+| localhost.localdomain | testuser | +-----------------------+-

mysql 更新一个字段(在他的后面添加字符串)

mysql 更新一个字段(在他的后面添加字符串) 更新一个字段,在它的后面加一个字符串,不查询数据库得到这个字段值 怎么添加?? 例如: 我的test表,有个user字段,我现在想在它后面加了另一个用户的名字 我在mysql数据库这样写 UPDATE test SET user= user+ ',phpchina'  WHERE id= '2'; 这样是不对的,mysql数据库把它当成数字相加了,user字段值变成0了. 应该: UPDATE test SET user= CONCAT(user

Mysql字符串字段中是否包含某个字符串,用 find_in_set

有这样一个需求,在Mysql数据库字符串字段(权限)中,有范围在 1 到 N 之间代表不同权限的值,分别被‘,’分开,现在要取出具有某权限的所有成员列表. 创建表: 1 CREATE TABLE users(id int(6) NOT NULL AUTO_INCREMENT,PRIMARY KEY (id),name VARCHAR(20) NOT NULL,limits VARCHAR(50) NOT NULL); 添加数据: 1 INSERT INTO users(name, limits)

Mysql字符串字段判断是否包含某个字符串的3种方法

方法一: SELECT * FROM users WHERE emails like "%[email protected]%"; 方法二: 利用MySQL 字符串函数 find_in_set(); SELECT * FROM users WHERE find_in_set('[email protected]', emails); 这样是可以的,怎么理解呢? mysql有很多字符串函数 find_in_set(str1,str2)函数是返回str2中str1所在的位置索引,str2必

MySQL批量替换指定字段字符串

MySQL批量替换是我们经常会用到的功能,有时站内包含敏感词,会给我们带来麻烦,而在信息量较大的情况下,一篇篇查找.修改是不现实的. 用MySQL批量替换,甚是轻松.发布在这里供参考,以备不时之需. MySQL批量替换指定字段字符串语句 UPDATE 数据表名 SET 字段名 = replace(字段名, '要替换的字符串', '替换为') WHERE 设定条件; 比如本站今天发现站内关于linux命令的文章 标题不是太好,以前都是以 linux下mkdir命令使用详解---linux创建目录命

Mysql查找如何判断字段是否包含某个字符串

Mysql查找如何判断字段是否包含某个字符串 有这样一个需求,在Mysql数据库字符串字段(权限)中,用户有多个不同的邮箱,分别被‘,’分开,现在要取出某个邮箱的所有成员列表. 假设有个表: CREATE TABLE users(id int(6) NOT NULL AUTO_INCREMENT,PRIMARY KEY (id),user_name VARCHAR(20) NOT NULL,emails VARCHAR(50) NOT NULL); 初始化表,并添加些记录. truncate t

Mysql字符串字段判断是否包含某个字符串的方法

方法一:like SELECT * FROM 表名 WHERE 字段名 like "%字符%";方法二:find_in_set() 利用mysql 字符串函数 find_in_set(); SELECT * FROM users WHERE find_in_set('字符', 字段名);mysql有很多字符串函数 find_in_set(str1,str2)函数是返回str2中str1所在的位置索引,str2必须以","分割开. 注:当str2为NO1:“3,6,1

SQL随着子查询结果更新多个字段

笔者:iamlasong 要求:表格内容需要改变,在临时表中内容的变化,使用SQL官方声明更新表若干领域. 假设更新一个字段,直接用字段名=子查询就能够了,多个字段更新,将字段在括号里并列写出就可以,例如以下: update tb_jg t set t.jgfl = 'sd', (     t.zj_code, t.zj_mc) = (select a.zj_code, a.zj_mc from song_temp a where a.zj_code = t.zj_code) where exi