这个mysql语句应该怎么写??

dnpao 2012-09-04 07:59:17
我想问下:如果数据表的这个字段 shopinfo 内容是这样

军绿色@@@/70A/11/12/13@/70B/21/22/23/###天蓝色@@@/70A/31/32/33@/70B/41/42/43/###浅绿色@@@/70A/51/52/53@/70B/61/62/63/


我想对 军绿色@@@/70B/21/ (这个21-10 =11)也就是以下结果

军绿色@@@/70A/11/12/13@/70B/11/22/23/###天蓝色@@@/70A/31/32/33@/70B/41/42/43/###浅绿色@@@/70A/51/52/53@/70B/61/62/63/


我见过的是好像一般对字段里的值进行增减,如:
$db->query("UPDATE {$_pre}content SET shopinfo=storage-1 WHERE id='100'");

这个mysql语句应该怎么写??
...全文
65 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
dnpao 2012-09-04
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
这样?

SQL code

mysql> select concat(SUBSTRING_INDEX('军绿色@@@/70A/11/12/13','/',4),'/',SUBSTRING_INDEX('军绿色@@@/70A/11/12/13','/',-1)-3) as shopinfo;

+------------------------+
| shopinfo ……
[/Quote]


恩,是这样,但你忘了加一个条件 比如我这个文章的id=100 不然人把这个表里的这个字段全给改了
小小小小周 2012-09-04
  • 打赏
  • 举报
回复
这样?
mysql> select concat(SUBSTRING_INDEX('军绿色@@@/70A/11/12/13','/',4),'/',SUBSTRING_INDEX('军绿色@@@/70A/11/12/13','/',-1)-3) as shopinfo;

+------------------------+
| shopinfo |
+------------------------+
| 军绿色@@@/70A/11/12/10 |
+------------------------+
dnpao 2012-09-04
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
没看明白..
[/Quote]


本数据库中字段 shopinfo 内容如下

$db->query("UPDATE {$_pre}content SET shopinfo='军绿色@@@/70A/11/12/13@@@/70B/11/22/23/' WHERE id='100'");

我想对 军绿色@@@/70A/11/12/13 这后面的13 减去3个值 13-3=10

$db->query("UPDATE {$_pre}content SET shopinfo='军绿色@@@/70A/11/12/10@@@/70B/11/22/23/' WHERE id='100'");
小小小小周 2012-09-04
  • 打赏
  • 举报
回复
没看明白..

56,687

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧