ai didi

php - "UPDATE WHERE NOT LIKE? "

转载 作者:行者123 更新时间:2023-12-05 04:18:39 24 4
gpt4 key购买 nike

如果字符串不存在,我正在尝试将字符串附加到字段:

mysql_query("UPDATE gals4 SET tags = CONCAT(tags, '$instag') WHERE id = '$instagnum' AND tags NOT LIKE '$instag'");

这只是附加到“标签”,无论它是否存在于现场。我在这里做错了什么?

最佳答案

要回答您的直接问题,您必须将字符 % 放在匹配字符串的开头和结尾:

 "AND tags NOT LIKE '%$instag%'"

但是,您应该意识到这是一种糟糕的在 SQL 数据库中存储数据的方式。至少存在三个问题:

  1. 如果您有嵌入其他标签(例如“cat”和“scat”)的标签,除非您编写非常复杂的基于逗号的搜索,否则您将找到错误的记录。
  2. 这些搜索永远无法编入索引,因此随着记录数量的增加会变得非常缓慢。
  3. 您无法根据允许的标签列表验证所使用的标签,无法保证数据库中只有允许的标签,也无法轻松地提供现有或允许的标签列表。

正确的解决方案是在您的数据库中添加至少一个表,称为 gals_tags,包含列 galid 和 tag。将每个标签一条记录插入到该表中。如果一个女孩有多个标签,则为每个标签添加一条记录。

关于php - "UPDATE WHERE NOT LIKE? ",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12712440/

24 4 0
文章推荐: websphere - 如何在WAS集群前配置一个HTTP Server?
文章推荐: WPF 数据网格左列
文章推荐: calendar - 排序 ekcalendar 或 ekreminder
文章推荐: php - nginx + proxy pas - 504 网关超时,1 分钟 30 秒后超时。试过 proxy_read_timeout 但没有成功
行者123
个人简介

我是一名优秀的程序员,十分优秀!

滴滴打车优惠券免费领取
滴滴打车优惠券
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com