MySQLi - Select 之前的结果
MySQLi - Select previous result
我正在尝试使用 php 和 mysqli select 以前的值。
我怎样才能 select 那?
表 1
|ID__|__VALUE__|
|1 --|--Rami--|
|2 --|--Sami--|
|3 --|--John--|
|4 --|--Jack--|
|5 --|--Mark--|
PHP 代码
//THIS GETTING 'JOHN'
$sql0 = mysqli_query($con,"SELECT * FROM `table1` WHERE `id` = '3' LIMIT 1");
while($row = mysqli_fetch_array($sql0))
{
$id = $row['id'];
}
//THIS GETTING 'JACK'
$sql1 = mysqli_query($con,"SELECT * FROM `table1` LIMIT $id, 1");
while($row = mysqli_fetch_array($sql1))
{
$id = $row['id'];
}
我的 php 代码正在尝试获取 'Sami' 值。错误的代码,但这是我尝试过的!
//THIS GETTING 'SAMI'
$sql2 = mysqli_query($con,"SELECT * FROM `table1` LIMIT $id, -1");
while($row = mysqli_fetch_array($sql2))
{
$id = $row['id'];
}
您应该更改 sql-查询
$sql2 = mysqli_query($con,"SELECT * FROM `table1` WHERE id=$id-1");
while($row = mysqli_fetch_array($sql2))
{
$id = $row['id'];
}
您可以使用您的 ID 已排序这一事实。
SELECT * FROM table1 WHERE id > $id ORDER BY id ASC LIMIT 1
这将 select 第 1 行 (LIMIT 1
),其中 id > $id
,所以简单来说:$id
行之后的第一行。 ORDER BY
是必要的,因此限制正常工作(您按升序获得所有行)
分别
SELECT * FROM table1 WHERE id < $id ORDER BY id DESC LIMIT 1
将获取前一行到 $id
。
请使用 last_insert_id() 这将给出最后插入的值 table
我正在尝试使用 php 和 mysqli select 以前的值。 我怎样才能 select 那?
表 1
|ID__|__VALUE__|
|1 --|--Rami--|
|2 --|--Sami--|
|3 --|--John--|
|4 --|--Jack--|
|5 --|--Mark--|
PHP 代码
//THIS GETTING 'JOHN'
$sql0 = mysqli_query($con,"SELECT * FROM `table1` WHERE `id` = '3' LIMIT 1");
while($row = mysqli_fetch_array($sql0))
{
$id = $row['id'];
}
//THIS GETTING 'JACK'
$sql1 = mysqli_query($con,"SELECT * FROM `table1` LIMIT $id, 1");
while($row = mysqli_fetch_array($sql1))
{
$id = $row['id'];
}
我的 php 代码正在尝试获取 'Sami' 值。错误的代码,但这是我尝试过的!
//THIS GETTING 'SAMI'
$sql2 = mysqli_query($con,"SELECT * FROM `table1` LIMIT $id, -1");
while($row = mysqli_fetch_array($sql2))
{
$id = $row['id'];
}
您应该更改 sql-查询
$sql2 = mysqli_query($con,"SELECT * FROM `table1` WHERE id=$id-1");
while($row = mysqli_fetch_array($sql2))
{
$id = $row['id'];
}
您可以使用您的 ID 已排序这一事实。
SELECT * FROM table1 WHERE id > $id ORDER BY id ASC LIMIT 1
这将 select 第 1 行 (LIMIT 1
),其中 id > $id
,所以简单来说:$id
行之后的第一行。 ORDER BY
是必要的,因此限制正常工作(您按升序获得所有行)
分别
SELECT * FROM table1 WHERE id < $id ORDER BY id DESC LIMIT 1
将获取前一行到 $id
。
请使用 last_insert_id() 这将给出最后插入的值 table