如何首先应用like然后限制SQL SELECT

时间:2014-05-26 12:42:30

标签: php mysql sql

我需要一些搜索MySQL数据库的帮助,我需要像数据库一样应用而不是限制结果。我已经分别实施和测试了这两件事,但它们都有效。

我认为当前的代码与我需要的相反(它仅适用于由LIMIT定义的表的一部分)是:

$result = mysqli_query($con ,"SELECT * FROM table WHERE (C_NAME='$cl' AND P_NAME='$pr') AND (CLSTOCK LIKE '%$term%') $max");

$term是使用post方法进行搜索的字符串。

$max是等于'LIMIT ' .($pagenum - 1) * $pagemax .',' .$pagemax;

的字符串

3 个答案:

答案 0 :(得分:0)

请查看此代码

$pagenum=2;
$pagemax=5;
$min=($pagenum - 1) * $pagemax ;
$max=$pagemax ;
$limit=" limit $min,$max";

$result =mysqli_query($con ,"SELECT * FROM table WHERE C_NAME='$cl' AND P_NAME='$pr' AND CLSTOCK LIKE '%$term%'". $limit);

答案 1 :(得分:0)

我认为这是由于括号。

 SELECT * FROM table WHERE ((C_NAME='$cl' AND P_NAME='$pr') AND (CLSTOCK LIKE '%$term%')) limit $min,$max"

我想尝试一下。

答案 2 :(得分:0)

尝试将代码的第一部分放在括号内,然后对该代码使用LIMIT clausus,如下所示:

mysqli_query($con ,"SELECT * FROM table WHERE ((C_NAME='$cl' AND P_NAME='$pr') AND (CLSTOCK LIKE '%$term%')) $max");