我想问一下mysql里,查询双引号是怎么处理的,

xiaozhanger 2011-01-24 03:01:45
字段message里有<a href="http://www.zhzyw.org/zybj/zymr/" target="_blank">美容</a>
这样一段字符串。

我想把
<a href="http://www.zhzyw.org/zybj/zymr/" target="_blank">美容</a>换成
美容
用下面的话:
UPDATE pre_forum_post SET message=REPLACE(message,'<a href="http://www.zhzyw.org/zybj/zymr/" target="_blank">美容</a>','美容');

怎么不行,0行

select *
from pre_forum_post
where message like '%<a href="http://www.zhzyw.org/zybj/zymr/" target="_blank">美容</a>%'
这样也查不出结果

select *
from pre_forum_post
where message like '%www.zhzyw.org/zybj/zymr/%'
这样能查出来,

我看了,就是字符串里的双引号的问题,可我不知道怎么解决,

我想问一下,请问怎么解决呢
...全文
1262 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
ACMAIN_CHM 2011-01-24
  • 打赏
  • 举报
回复
[Quote]select * from pre_forum_post
where message like '%美容%'
这样就能查出来[/Quote]

那你的数据库中有带双引号的记录吗?
xiaozhanger 2011-01-24
  • 打赏
  • 举报
回复
不是用用 美容 来查询

select * from pre_forum_post
where message like '%美容%'

这样就能查出来
小小小小周 2011-01-24
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 xiaozhanger 的回复:]
MySQL 返回的查询结果为空(即零行)。 (查询……
[/Quote]

那你用 美容 来查询下,查询的到么.我想不行;

你在执行前,先运行:
set names gbk
再输入sql 看看;
xiaozhanger 2011-01-24
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 mr_mablevi 的回复:]
你直接到mysql的命令行输入:
select * from pre_forum_post
where message like '%<a href="http://www.zhzyw.org/zybj/zymr/" target="_blank">美容</a>%'
看看有结果没?
[/Quote]

MySQL 返回的查询结果为空(即零行)。 (查询花费 0.3158 秒)
小小小小周 2011-01-24
  • 打赏
  • 举报
回复
你直接到mysql的命令行输入:
select * from pre_forum_post
where message like '%<a href="http://www.zhzyw.org/zybj/zymr/" target="_blank">美容</a>%'
看看有结果没?
xiaozhanger 2011-01-24
  • 打赏
  • 举报
回复
美容 这样的就可以正常查询

<a href="http://www.zhzyw.org/zybj/zymr/" target="_blank">美容</a>这样的就不能正常查询

我不知道为什么了
小小小小周 2011-01-24
  • 打赏
  • 举报
回复
可能楼主的中文显示乱码了.
ACMAIN_CHM 2011-01-24
  • 打赏
  • 举报
回复
估计是中文的问题

你试一下
select *
from pre_forum_post
where message like '%<a href="http://www.zhzyw.org/zybj/zymr/" target="_blank">%</a>%'

如果可以查到,则说明是字符集设置的问题。按下贴中方法贴出你的检查结果。
http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspx
MySQL 中文显示乱码
xiaozhanger 2011-01-24
  • 打赏
  • 举报
回复
我用的是phpMyAdmin网页客户端做查询的,
是不是网页进行了过滤了啊?

我用navicat mysql试试,
小小小小周 2011-01-24
  • 打赏
  • 举报
回复
mysql> select * from re;
+------+--------------------------------------------------------------------+
| id | url |
+------+--------------------------------------------------------------------+
| 1 | <a href="http://www.zhzyw.org/zybj/zymr/" target="_blank">美容</a> |
+------+--------------------------------------------------------------------+
1 row in set (0.03 sec)

mysql> select * from re
-> where url like '%<a href="http://www.zhzyw.org/zybj/zymr/" target="_blank
">美容</a>%';
+------+--------------------------------------------------------------------+
| id | url |
+------+--------------------------------------------------------------------+
| 1 | <a href="http://www.zhzyw.org/zybj/zymr/" target="_blank">美容</a> |
+------+--------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> select * from re
-> where url like '%www.zhzyw.org/zybj/zymr/%';
+------+--------------------------------------------------------------------+
| id | url |
+------+--------------------------------------------------------------------+
| 1 | <a href="http://www.zhzyw.org/zybj/zymr/" target="_blank">美容</a> |
+------+--------------------------------------------------------------------+
1 row in set (0.00 sec)


没问题,正常的啊..

57,006

社区成员

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

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