我有一数据库 keyname(varchar) strid(text) 成都 12,75,1236,8975,14566,23645 我想用一sql,
当数据库中存在 成都的 时候
在strid 后面 加上一个字符串 如32332 结果为 keyname='成都' 的 strid ='12,75,1236,8975,14566,23645,32332 '(存在 就update)当不存在 成都的时候直接 插入 keyname='成都' strid='32332'(不存在就 insert)
当数据库中存在 成都的 时候
在strid 后面 加上一个字符串 如32332 结果为 keyname='成都' 的 strid ='12,75,1236,8975,14566,23645,32332 '(存在 就update)当不存在 成都的时候直接 插入 keyname='成都' strid='32332'(不存在就 insert)
解决方案 »
- CHANGE MASTER TO MASTER_HOST=""
- 数据库文件800多兆....怎么导不进去?
- 今天才到了一篇文章讲php中文分词全文索引,附地址,想问下这么做数据量上千万,速度有多快?
- 如何判断两个字段的值是否相等?
- mysql 错误 1067: 进程意外终止
- mysql4.1.3insert + mysql-connector-java-3.1.1-alpha-bin.jar出错
- 高手请进, 解决必给高分!!!!
- 数据量有点大,查询很慢咋解决呢?
- Mysql Group By后的查询问题
- 在MYSQL中表级完整性约束条件,参照表和被参照表可以是同一个表吗?
- Mysql 查询出生日期为最近7天sql.
- 怎么样中断mysql的操作
select distinct '成都','32332' where
not exists(select 1 from tt where keyname='成都')update tt set strid=concat(strid,'32332')
where exists(select 1 from tt where keyname='成都')
如KEYNAME是主键的话:
replace tt set keyname='成都',strid=concat(strid,'32332')
replace tt(b1,b2)
select b1,concat(COALESCE(b2,''),'32332') from tt
B1为主键
b1:keyname
b2:strid
replace tt(b1,b2)
select b1,concat(COALESCE(b2,''),'32332') from tt where b1='成都'
B1为主键
b1:keyname
b2:strid
或直接在你程序中实现
select distinct '成都','32332' where
not exists(select 1 from tt where keyname='成都')update tt set strid=concat(strid,'32332')
where keyname='成都'