Php 如何使此查询不查找长度上的分部?

Php 如何使此查询不查找长度上的分部?,php,mysql,Php,Mysql,目前这是我的查询: $query_master = "SELECT DISTINCT * FROM `master_list` WHERE `plain_name` LIKE '%" . $searchterm . "%' OR `name` LIKE '%" . $searchterm . "%' OR `img` LIKE '%" . $searchterm . "%' OR `item_code` LIKE '%" . $searchterm . "%' OR `length` LIKE

目前这是我的查询:

$query_master = "SELECT DISTINCT * FROM `master_list` WHERE `plain_name` LIKE '%" . $searchterm . "%' OR `name` LIKE '%" . $searchterm . "%' OR `img` LIKE '%" . $searchterm . "%' OR `item_code` LIKE '%" . $searchterm . "%' OR `length` LIKE '%" . $searchterm . "%' ORDER BY `order_number`";
然而,当我使用它时,它会拉取长度部分匹配的项目。如何使长度部分精确匹配

我已尝试将其更改为:

$query_master = "SELECT DISTINCT * FROM `master_list` WHERE `plain_name` LIKE '%" . $searchterm . "%' OR `name` LIKE '%" . $searchterm . "%' OR `img` LIKE '%" . $searchterm . "%' OR `item_code` LIKE '%" . $searchterm . "%' OR `length` == '%" . $searchterm . "%' ORDER BY `order_number`";
以几种不同的方式,它会中断页面。

只需删除长度字段的(%)运算符

$query_master = "SELECT DISTINCT * FROM `master_list` WHERE `plain_name` LIKE '%" . $searchterm . "%' OR `name` LIKE '%" . $searchterm . "%' OR `img` LIKE '%" . $searchterm . "%' OR `item_code` LIKE '%" . $searchterm . "%' OR `length` LIKE '" . $searchterm . "' ORDER BY `order_number`";

我想这会对您有所帮助。

不要在长度字段上使用部分匹配运算符?您所说的长度是什么意思?这是查询中的长度还是结果字符串的长度?@lakmalbodinayaka,length是查询正在搜索的数据库中的一列。我需要一个准确的,但似乎不能使它工作。@YourCommonSense,你能给我举个例子说明我可以用什么来代替吗?我已经尝试了一些类似于我编辑问题时添加的问题,它们会破坏我的页面。在这里,您一直在使用精确匹配运算符。为什么你要问我一个你肯定知道答案的问题?泰,这确实有效,但我也去掉了最后一个问题的“标记”。因此,在这一部分中,它以“$searchterm”结尾,而且效果很好。我想在我删除太多或错误的标记之前。