在mysql中更有效的查询

时间:2010-12-10 13:35:02

标签: php mysql

我想知道他们如何在页面中只有一个文本框进行查询,但文本框中的当前文本可以用作查询的参数。 我目前正在使用下面的查询,但我认为我没有得到预期的结果,我的查询有什么问题吗?

$result1=query_database("SELECT * FROM prod_table WHERE CATEGORY LIKE '$cuts%' OR PRODUCT LIKE '$cuts%' OR P_DESC LIKE '$cuts%' ", "onstor", $link);

?>


<?php

if(mysql_num_rows($result1)==0){

}else{

如何更好地进行此类查询。

3 个答案:

答案 0 :(得分:1)

如果您未定义query_database

mysql_query("SELECT * FROM prod_table WHERE CATEGORY LIKE '$cuts%' OR PRODUCT LIKE '$cuts%' OR P_DESC LIKE '$cuts%' ", "onstor", $link);

答案 1 :(得分:0)

为3个字段CATEGORY,PRODUCT,P_DESC中的每个字段添加索引,它应该运行得更快。

你确定LIKE'$ cut%'是正确的。我认为它应该是'%$ cut%'。在你写的方式中,只找到以$ cuts

的值开头的产品

答案 2 :(得分:0)

在$ cut之前使用%并转义此查询很好

 $result1=query_database("SELECT * FROM prod_table WHERE CATEGORY LIKE '%$cuts%' OR PRODUCT LIKE '%$cuts%' OR P_DESC LIKE '%$cuts%' ", "onstor", $link);