gpt4 book ai didi

php - MySQL 字符串转换为表达式

转载 作者:行者123 更新时间:2023-11-29 14:53:43 26 4
gpt4 key购买 nike

我有一个 MySQL 例程,其条件为:

Where category like CONCAT("%",@category,"%")

...这对于单一类别效果很好。

现在我想与多个类别进行比较,我尝试从 PHP 构建字符串(字符串连接),但它不起作用(在 Mysql 例程中)。

如何转换此条件以匹配多个 LIKE 表达式?

最佳答案

假设你的类别栏是这样的:“猫、狗、大象”;分隔的关键字。有3种解决方案:

1) 最丑陋的解决方案,可能是最糟糕的:

WHERE category like CONCAT("%",@category1,"%") 
OR category like CONCAT("%",@category2,"%")

但是为此,您应该知道要查询多少个类别。这种方法可能根本行不通。

2) 如果它是 myisam 表,您可以使用 full-text search functions与类别字段匹配,这比第一个选项更快、更整洁。

3) 最好的方法是重新设计表结构,在类别和主题项之间建立一个关系表(因为它看起来像 1-N 关系)

如果您可以给出一些有助于理解的定义(代码)和数据示例。

关于php - MySQL 字符串转换为表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5145063/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com