У меня есть стол Post, пользователь может искать сообщение по поиску по ключевым словам.Решение Mysql Случайный запрос мигрирует, когда goto другая страница
Итак, я использую SQL-запрос по ключевому слову и по заказу RAND(). При отображении результата я использую данные GridView и Pagination. И есть проблема, когда переходите на другую страницу. Пример со страницы 1 перейдите на страницу 2 с тем же ключевым словом. Я снова запрошу и закажу Rand(). Поэтому некоторые данные на стр. 1 могут появиться на стр. 2. Эти данные дублируются и не хороши.
Так как я могу решить эту проблему. и запрос данных, когда другая страница goo будет одинаковой с данными в первом запросе.
Я использую Yii2 в своем проекте.
Ну, вы ограничиваете запрос (например) 20 результатами и используете 'ORDER BY RAND()', правильно? Но в MySQL 'ORDER' применяется до' LIMIT', поэтому вы всегда получаете случайные результаты, а затем ограничиваете их, поэтому некоторые из них появляются на других страницах. Кстати, зачем вам нужно использовать 'RAND()'? Не рекомендуется, когда вы хотите использовать страницы для получения результатов. – debute
Да, требуется клиент для случайных данных. И требуют запроса всех данных. Я нашел решение для случайного элемента. Я не использую mysql random. Когда данные запроса, я не использую случайный, и когда результат показа для пользователя будет случайным по php. и при повторном доступе. На первой странице будет случайным одно и то же правило. Поэтому я не знаю точного php funtion для случайного массива с таким же результатом (добавьте по некоторому условию) – dungphanxuan