Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用PHP进行Mysql搜索_Php_Mysql_Search - Fatal编程技术网

用PHP进行Mysql搜索

用PHP进行Mysql搜索,php,mysql,search,Php,Mysql,Search,我正在使用PHP搜索Mysql数据库,我在回显查询,这样我就可以看到发生了什么,结果如下: select * from `parts` where 'category' like 'at' 然而,没有任何回报。我知道肯定有一个叫做category的列和一个叫做at的字段。如果我在%处执行%,它只会返回所有结果 基本上,我想得到所有记录,其中at是category列中的一个值您的问题不清楚哪些应该是文字,哪些应该是字段名。字段名使用左撇号。因此,如果您希望类别字段包含文字的所有记录位于,请执行以

我正在使用PHP搜索Mysql数据库,我在回显查询,这样我就可以看到发生了什么,结果如下:

select * from `parts` where 'category' like 'at'
然而,没有任何回报。我知道肯定有一个叫做category的列和一个叫做at的字段。如果我在%处执行%,它只会返回所有结果


基本上,我想得到所有记录,其中at是category列中的一个值

您的问题不清楚哪些应该是文字,哪些应该是字段名。字段名使用左撇号。因此,如果您希望类别字段包含文字的所有记录位于,请执行以下操作:

更改您的报价:

select * from `parts` where `category` like '%at%'
从“类别”如“at”的零件中选择*

这没有任何意义-类别周围的引号将其声明为文字值,而不是属性名

我知道肯定有一个叫做category的列和一个叫做at的字段

这让人困惑。术语“列”通常代替“属性”,后者是描述关系数据库中数据结构的正确方法。至于“字段”,你是指属性的实例吗

我想你是指你的代码:

select * from parts where category like '%at%'
在数据库实体(即非文字值)周围的倒勾是可选的,除非它们包含空格。请注意,使用不带通配符的te-like运算符很麻烦,因此如果您要查找与“at”匹配的值,而不是与“cat”或“attach”匹配的值

select * from parts where category='at'

不确定在处调用的字段是什么意思,但它是否是行值 试试这个

select * from `parts` where category='at';

你不能用这种方式比较两个字段。Like的第二个参数是一个模式,并被解释为正则表达式。您可以尝试以下方法:

   select * from parts where category like concat('%', at, '%')

它将从at字段中获取值,添加%符号,然后比较字段。

该字段是什么类型的?表的排序规则是什么?请告诉我们有关Category字段及其包含的值的更多信息。它是固定为两个字符还是允许更长的字符串?它区分大小写吗?请向我们显示在执行%at%操作时选择的一些其他值;它真的是所有的值,或者可能只是你有很多类别,其中包含字母“at”。你试过%吗?他正在试着比较两个字段。奇怪的是,我试过%时,我的网络主机出现了406错误!?lol,删除“类别”周围的引号。当然,“category”类似于“%at%”,它包含“at”:不,他说我想获取所有记录,其中at是category列中的一个值