ФорумПрограммированиеPHP для идиотов → Наилучший способ получит несколько случайных записей из БД

Наилучший способ получит несколько случайных записей из БД

  • iphine5g

    Сообщения: 221 Репутация: N Группа: Кто попало

    Spritz 4 ноября 2011 г. 12:09

    Опытные пишите. ORDER BY RAND не использовать.
  • master

    Сообщения: 3244 Репутация: N Группа: Джедаи

    Spritz 4 ноября 2011 г. 12:35, спустя 25 минут 30 секунд

    выбери все первичные ключи, отсортируй рандомно, удали лишние, сделай выборку where in
    не всё полезно, что в swap полезло
  • Faster

    Сообщения: 1159 Репутация: N Группа: Кто попало

    Spritz 4 ноября 2011 г. 13:17, спустя 42 минуты 37 секунд

    как вариант используя сквозную нумерацию какого нибудь произвольного поля INT брать максимальное значение , получив диапазон 1 : MAX (альтернатива - если записи не удалялись, то имеется сквозная нумерация PRIMARY KEY через автоинкремент)
    уже юзать рандом в пхп используя диапазон
  • iphine5g

    Сообщения: 221 Репутация: N Группа: Кто попало

    Spritz 4 ноября 2011 г. 23:08, спустя 9 часов 51 минуту 1 секунду

    в принципе у меня случайно должно выводиться несколько заметок пользователя. Максимум их думаю будет 500. Я беру только айдишники, а не *. Как думаете, не сильно долго будет думать?
  • Faster

    Сообщения: 1159 Репутация: N Группа: Кто попало

    Spritz 4 ноября 2011 г. 23:32, спустя 23 минуты 43 секунды

    при 500 юзай RAND() в запросе
    я думал от 10к записей ..
  • iphine5g

    Сообщения: 221 Репутация: N Группа: Кто попало

    Spritz 5 ноября 2011 г. 1:02, спустя 1 час 30 минут 18 секунд

    хотелось просто послушать мнения, спасибо буду вооружен)
  • Абырвалг

    Сообщения: 6480 Репутация: N Группа: Джедаи

    Spritz 5 ноября 2011 г. 1:27, спустя 24 минуты 43 секунды

    недавно ж была похожая тема про продукты и категории. Я там ссылку давал

Пожалуйста, авторизуйтесь, чтобы написать комментарий!