このようなテーブルがあります(重要でない列は省略されています
`pictures` (
`picture_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`picture_title` varchar(255) NOT NULL,
`album_id` int(10) unsigned DEFAULT NULL,
`authenticated` tinyint(4) DEFAULT '0',
`approved` tinyint(4) DEFAULT '0'
)
私がやりたいことは、次と前の認証および承認されたpicture_idを取得することです。ただし、落とし穴があります - その出現にはpicture_id = album_id
またはが必要album_id IS NULL
です。
これは、私が達成したいことを簡単に説明するための画像です。http://i.imgur.com/xTaEhwt.png
赤でマークされた列は選択したいもので、緑でマークされた列は私が持っているpicture_idで、次/前のIDを見つけたいです。picture_id と等しくない album_id があるため、picture_ids 2 < 9 をスキップし、認証/承認されていないため、picture_id 11 をスキップすることに注意してください。
どうすればこれを達成できますか? 私は無知です。
編集:少し言い直しました