我正在使用此PDO查询从MySQL调用数据.
$sql = "SELECT itemName FROM furniture WHERE itemID = :item";
Run Code Online (Sandbox Code Playgroud)
在调用此特定itemName时,是否可以通过在同一查询中使用其itemID来获取下一个和上一个itemNames,而无需编写新查询来获取下一个和上一个itemNames?
例如,如果
itemID | itemName
___________________________
553 | Mahogani Black Chair
554 | Teak Round Table
555 | Thulang Relaxing Chair
556 | Teak Relaxing Chair
$sql = "SELECT itemName FROM furniture WHERE itemID = :item";
$stmt = $connect->prepare($sql);
$stmt->execute(array(':item'=>"554"));
$rslt = $stmt->fetchAll(PDO::FETCH_ASSOC);
Run Code Online (Sandbox Code Playgroud)
我正在寻找Teak Round Table和Mahogani Black Chair和Thulang Relaxing Chair
请使用此代码:
(SELECT itemName FROM furniture WHERE itemID < 554 order by itemID desc limit 1)
UNION
(SELECT itemName FROM furniture WHERE itemID >= 554 order by itemID asc limit 2)
Run Code Online (Sandbox Code Playgroud)
对于示例代码:
MyTable:
================
id Store_name
================
1 English
2 French
3 Tamil
4 Uk
5 US
<?php
$con = mysqli_connect("localhost","root","ramki","ramki");
$sql = "(SELECT store_name FROM store WHERE id < 2 order by id desc limit 1)
UNION
(SELECT store_name FROM store WHERE id >= 2 order by id asc limit 2)";
$query = mysqli_query($con,$sql);
while ($row = mysqli_fetch_assoc($query)) {
echo $row['store_name'];
echo "<br>";
}
?>
Run Code Online (Sandbox Code Playgroud)