php - mysql 更新行(如果存在)

标签 php mysql

快速 mysql php 问题。

我有一个 $row['sentence'] 和另一个 $row['rank']

我正在尝试写一个东西..它说..如果您在 $row['sentence'] 中找到...这些特定的词..插入或更新 $row['rank'] 按我指定的任何值..

例如。这句话有坏词.. 所以 rank 行..将变为 1

例子2。这句话很干净 所以 rank 行 将变为 5

谢谢..如果我让你感到困惑..告诉..我我会尝试另一种方式..

最佳答案

您可以创建一个表,将每个坏词作为记录,然后通过它进行解析以创建更大的 sql 语句。通过这种方式,您可以将来自数据库的任何坏词添加到坏词列表中,而不必为每个 like 子句手动输入每个词。

例如:

$some_array = array(<list of bad words retrieved from db>);

$query = "update mytable set rank = 1 where ";

foreach ($some_array as $item) {
  $query .= "sentence like '%$item%'and ";
}

//remove last "and" from end of $query string
echo $query;

因此它会生成一个类似于 nickf 提供的 sql 语句,但包含一长串所有不良词。

update mytable set rank = 1 where sentence like '%bad word%' and sentence like ...

同样效率不高,但它应该在某种程度上完成您的需求。

关于php - mysql 更新行(如果存在),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3614120/

相关文章:

php - 动态加载命名空间类

mysql - 在 phpmyadmin 中执行选择查询时,如何为带有自定义注释的字段指定别名

java - JPA EclipseLink - 通过主键维护顺序获取多个对象

mysql - 将频繁更新的列移至单独的表以获得更好的性能?

php - 可以在 Windows CE、WM8650 上网本上运行 "WAMP"吗?

php - 在 laravel 中间件中访问模型

php - 从文件夹中获取所有照片并使用 PHP 分页

php - Mysql连接到一个数据库后选择不同的数据库

php - joomla mysql 日期数学逻辑

javascript - 如何下载通过发布生成的 php 文件,同时避免页面位置被更改?