我正在开发一个 PHP/MySQL 应用程序,我正在尝试将文本与两个字段之一相匹配。
我的数据库有 primaryname
和 alternatename
:primaryname
是一个文本单词。 alternatename
是逗号分隔的列表。
它适用于匹配主名称,但 OR 部分导致整个查询失败。
工作部分:
$sql_statement = "SELECT primaryname, alternatename, notes, imageurl, status ";
$sql_statement .= "FROM fish ";
$sql_statement .= "WHERE primaryname LIKE '".$fishname."'";
这是我所拥有的(不工作):
$sql_statement = "SELECT primaryname, alternatename, notes, imageurl, status ";
$sql_statement .= "FROM fish ";
$sql_statement .= "WHERE primaryname LIKE '".$fishname."' OR alternatename LIKE %'".$fishname."'%";
有什么想法吗?谢谢!
(附言,如果格式设置不正确,我很抱歉。这是我潜伏多年后关于 Stack Overflow 的第一个问题。找不到这个问题的答案。)
最佳答案
我会在评论中留下它,但声誉不够高。
看起来你的 % 符号应该在单引号中 '%".$fishname."%'
关于PHP/SQL 文本匹配到一个字段或在第二个字段中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35374883/