Php 从数据库中选择定义值之前或之后的数据

Php 从数据库中选择定义值之前或之后的数据,php,mysql,Php,Mysql,在满足定义的值后,我在实现从db中的表中选择数据的查询时遇到问题 我的代码是: $fi = 'first_segment' $im = popo.jpg $sqls = "SELECT * FROM $fi,news_pictures WHERE $fi.pi_id = news_pictures.pi_id AND news_pictures.i_name = '$im' GROUP BY news_pictures.id DESC"

在满足定义的值后,我在实现从db中的表中选择数据的查询时遇到问题

我的代码是:

$fi = 'first_segment'
$im = popo.jpg

$sqls = "SELECT * FROM $fi,news_pictures
         WHERE $fi.pi_id = news_pictures.pi_id
           AND news_pictures.i_name = '$im'
         GROUP BY news_pictures.id DESC";
我无法通过该查询获得结果

基本上,我希望查询确认
news\u pictures.I\u name='$im'
,如果为true,则返回值从
$im
的值开始,然后是表中的其他数据,具体取决于
news\u pictures.id DESC

示例数据和输出:

新闻图片

id   i_name
--   ------
1    coco.jpg
2    lolo.jpg
3    popo.jpg
4    dodo.jpg

由于
$im=popo.jpg
,我希望我的查询显示从
popo.jpg
开始的所有值,带有
id DESC
,即
popo.jpg
lolo.jpg
coco.jpg

,我在朋友的帮助下解决了这个问题

$fsqls = "SELECT * FROM $fi,news_pictures WHERE $fi.pi_id = news_pictures.pi_id AND news_pictures.i_name = '$im' GROUP BY news_pictures.id";
$rres = mysqli_query($connection, $fsqls) or print(mysqli_error($connection));
while($row = mysqli_fetch_assoc($rres))
{
    $rnm = $row["id"];
}
$sqls = "SELECT * FROM news_pictures WHERE news_pictures.id <= $rnm ORDER BY news_pictures.id DESC";
$fsqls=“从$fi、新闻图片中选择*,其中$fi.pi\u id=news\u pictures.pi\u id和news\u pictures.i\u name=“$im”按新闻图片分组.id”;
$rres=mysqli_查询($connection,$fsqls)或打印(mysqli_错误($connection));
while($row=mysqli\u fetch\u assoc($rres))
{
$rnm=$row[“id”];
}

$sqls=“SELECT*FROM news\u pictures,其中news\u pictures.id使用mysql内部联接