-1

ここに SQL クエリがあり、それを調整する必要があります

 SELECT DISTINCT ic.img_path, ic.id
                    FROM images_community ic
                    WHERE ic.delete_flag = 0 AND ic.status = 1
                    ORDER BY ( SELECT (count(id = ic.id ) +  ic.views) 
                    FROM image_comments WHERE img_id = ic.id) DESC

特定のIDの後にレコードを表示する必要があります

このID = 5この画像が取得した後に行を表示する必要があることを確認するために、制限とオフセットはありません

> images  id | img_path
>         1  | dafad.sjdbh
>         2  | dafad.sjdbh
>         5  | dafad.sjdbh
>         3  | dafad.sjdbh

検索された同じクエリで id = 5 の後にレコードを表示する方法はありますか?

4

2 に答える 2

1

limit と offset を使用して達成できます。 Limit、Offsetを参照してください。

オフセット後のすべての行が必要な場合は、

SELECT DISTINCT ic.img_path, ic.id
                    FROM images_community ic
                    WHERE ic.delete_flag = 0 AND ic.status = 1
                    ORDER BY ( SELECT (count(id = ic.id ) +  ic.views) 
                    FROM image_comments WHERE img_id = ic.id) DESC LIMIT (SELECT cout(*) FROM table_name) OFFSET my_row_offset
于 2013-03-11T12:21:38.263 に答える
1

この ID の行位置を見つけ、そこから制限を開始します。

于 2013-03-11T14:42:57.520 に答える