我正在尝试使用LIKE语句从数据库中选择内容,但我还想限制我从中获取的记录数量。
$query = mysqli_query($connect,
"SELECT * FROM proizvodi WHERE `naziv` LIKE %127% ".
"AND LIMIT $start, $per_page");
我的代码是一个布尔值,并且无法正常工作。如何解决这个问题?
答案 0 :(得分:3)
LIMIT
需要引号,且无法与AND
结合使用。
SELECT * FROM proizvodi WHERE `naziv` LIKE '%127%' LIMIT $start, $per_page
答案 1 :(得分:2)
查看SELECT
声明的文档,您无需使用AND加入WHERE
和LIMIT
部分。
请参阅:http://dev.mysql.com/doc/refman/5.7/en/select.html
SELECT * FROM proizvodi WHERE `naziv` LIKE %127% LIMIT $start, $per_page;
答案 2 :(得分:1)
SQL 保证每次都以相同的顺序返回相同的结果,除非您使用order by
。您的代码应如下所示:
SELECT *
FROM proizvodi
WHERE `naziv` LIKE %127%
ORDER BY <something>
LIMIT $start, $per_page
答案 3 :(得分:0)
限制不是where子句的一部分,因此不允许AND
。
答案 4 :(得分:0)
$query = mysqli_query($connect,
"SELECT * FROM proizvodi
WHERE `naziv` LIKE %127%
ORDER BY naziv ASC
LIMIT 10");
这会将您的查询限制为最多10个。
$ start,$ per_page如果现在出现问题,可以稍后获取......:)
答案 5 :(得分:0)
您可以尝试以下操作:
$sql='SELECT * FROM product WHERE `ProName` LIKE "%'.$searchWord.'%" LIMIT '.$this_page_first_result.', '.$results_per_page.';'