点击蓝字关注我们!每天获取最新的编程小知识!
源 / php中文网 源 / www.php.cn
在MySQL中,LIMIT子句与SELECT语句一起使用,以限制结果集中的行数。LIMIT子句接受一个或两个offset和count的参数。这两个参数的值都可以是零或正整数。
(查看原文请点击本文末尾左下角:
offset:用于指定要返回的第一行的偏移量。
Count:用于指定要返回的最大行数。
Limit子句接受一个或两个参数,当指定两个参数时,第一个参数表示偏移量,第二个参数表示计数,而当只指定一个参数时,它表示从结果集开始返回的行数。
LIMIT语法:
SELECT column1, column2, ...
FROM table_name
LIMIT offset,
count
;
SELECT * FROM Data LIMIT 3;
要从“Data”表中检索第2-3行(包括),我们将使用以下查询:
SELECT * FROM Data LIMIT 1, 2;
下面是PHP mysql实现查询的代码示例:
示例1:Limit条件
< ? php
$link
= mysqli_connect(
"localhost"
,
"root"
,
""
,
"Mydb"
);
if
(
$link
== = false) {
die
(
"ERROR: Could not connect. "
.mysqli_connect_error());
}
$sql
=
"SELECT * FROM Data LIMIT 2"
;
if
(
$res
= mysqli_query(
$link
,
$sql
)) {
if
(mysqli_num_rows(
$res
) > 0) {
echo
"
";
echo
""
;
echo
"Firstname"
;
echo
"Lastname"
;
echo
"Age"
;
echo
"
"
;
while
(
$row
= mysqli_fetch_array(
$res
)) {
echo
""
;
echo
""
.
$row
[
'Firstname'
].
"
";
echo
""
.
$row
[
'Lastname'
].
"
";
echo
""
.
$row
[
'Age'
].
"
";
echo
"
"
;
}
echo
"
"
;
mysqli_free_result(
$res
);
}
else
{
echo
"No matching records are found."
;
}
}
else
{
echo
"ERROR: Could not able to execute $sql. "
.mysqli_error(
$link
);
}
mysqli_close(
$link
);
注:“res”变量存储函数mysql_query()返回的数据。
每次调用mysqli_fetch_array()时,它都会从res()集中返回下一行。
while循环用于遍历表“data”的所有行。
示例2:使用面向对象方法的Limit子句
< ? php
$mysqli
=
new
mysqli(
"localhost"
,
"root"
,
""
,
"Mydb"
);
if
(
$mysqli
== = false) {
die
(
"ERROR: Could not connect. "
.
$mysqli
->connect_error);
}
$sql
=
"SELECT * FROM Data LIMIT 2"
;
if
(
$res
=
$mysqli
->query(
$sql
)) {
if
(
$res
->num_rows > 0) {
echo
"
";
echo
""
;
echo
"Firstname"
;
echo
"Lastname"
;
echo
"Age"
;
echo
"
"
;
while
(
$row
=
$res
->fetch_array()) {
echo
""
;
echo
""
.
$row
[
'Firstname'
].
"
";
echo
""
.
$row
[
'Lastname'
].
"
";
echo
""
.
$row
[
'Age'
].
"
";
echo
"
"
;
}
echo
"
"
;
$res
->free();
}
else
{
echo
"No matching records are found."
;
}
}
else
{
echo
"ERROR: Could not able to execute $sql. "
.
$mysqli
->error;
}
$mysqli
->close();
< ?
php
try
{
$pdo
=
new
PDO(
"mysql:host=localhost;dbname=Mydb"
,
"root"
,
""
);
$pdo
->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch
(PDOException
$e
) {
die
(
"ERROR: Could not connect. "
.
$e
->getMessage());
}
try
{
$sql
=
"SELECT * FROM Data LIMIT 2"
;
$res
=
$pdo
->query(
$sql
);
if
(
$res
->rowCount() > 0) {
echo
"
";
echo
""
;
echo
"Firstname"
;
echo
"Lastname"
;
echo
"Age"
;
echo
"
"
;
while
(
$row
=
$res
->fetch()) {
echo
""
;
echo
""
.
$row
[
'Firstname'
].
"
";
echo
""
.
$row
[
'Lastname'
].
"
";
echo
""
.
$row
[
'Age'
].
"
";
echo
"
"
;
}
echo
"
"
;
unset(
$res
);
}
else
{
echo
"No matching records are found."
;
}
}
catch
(PDOException
$e
) {
die
(
"ERROR: Could not able to execute $sql. "
.
$e
->getMessage());
}
unset(
$pdo
);
-END-
声明:本文选自「 php中文网 」,搜索「 phpcnnew 」即可关注!
▼