协助MySQL'LIKE'语句

时间:2018-11-07 18:44:07

标签: mysql

大家好,大家好,

为了开始我的问题,我们有一个数据库,用于存储Web表单的整个HTML代码(不要问,我没有创建此代码),并且其中一些HTML值是从另一个表填充的。发现此表中有一些双引号("),这是有问题的,因为如果您有:

<input type="text" value="Hello "John" Smith">

它将破坏其下面的所有标签。

我们已经着手解决此问题,并且我已经实施了一种解决方案来从今天开始捕获这些问题。但是现在,我们有数量不明的残破表单。

所以我想做的是运行一个SQL语句来查找发生这种情况的所有实例。

这就是我所拥有的:

SELECT * FROM tableName WHERE data LIKE '%value="%"%"'

但是此语句没有产生任何结果。

任何帮助将不胜感激!

谢谢

DM

2 个答案:

答案 0 :(得分:0)

您的标签可能不会以引号结尾,因此让我们在末尾添加通配符:

SELECT * FROM tableName WHERE data LIKE '%value="%"%"%'

答案 1 :(得分:0)

如果value属性是元素中的最后一个属性,则可以用以下方式检查value的值是否用双引号引起来:

SELECT * FROM tableName WHERE data
LIKE '%value="%"_%>'

条件会在属性值结束表示不正确的值之前检查是否有双引号。

_%表示任何一个或多个字符。