2017-05-02 8 views
0

定義された値が満たされた後に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_pictures.i_name = '$im'が真ならば、リターンはnews_pictures.id DESCに応じて、テーブル内の他のデータが続く$imの値から開始した場合、クエリを確認したいです。

サンプルデータと出力は:

news_pictures

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

$im = popo.jpg以来、私は私のクエリはid DESCpopo.jpgから始まるすべての値を表示したい、すなわちpopo.jpglolo.jpgcoco.jpg

+1

mysql内部結合を使用する – JYoThI

答えて

0

私は友人の助けを借りて問題を解決するようになりました。

$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"; 
関連する問題