Общие > Базы данных

Выбор несуществуюей записи MySQL

(1/2) > >>

Error202:
Господа!

есть пространство 5 кубов, в каждом по 500 более мелких кубов, где в каждом по 15 совсем мелких...
В бд (MySQL) каждый куб записывается по пути начиная от большого, т.е. например k1=3, k2=345, k3=12
это все формально, изначально бд пустая

при регистрации юзер получает случайно выбранный самый мелкий куб и он заносится в бд в таком виде... (например k1=3, k2=345, k3=12)

Не могу придумать алгоритма, как случайно придумать куб  из большого квадрата так, чтобы параметры k1,k2 и k3 не совпадали с уже существующим в бд (т.е. выбрать несуществуюий куб и занять его)?

k1,k2 и k3 - поля таблицы

brainkiller:
Вариант с предсозданием записей для каждого куба с последующим select id from cubes where user_id = 0 limit 1 чем не подходит?

Error202:
Да многовато надо делать пустых записей... 5*500*15...
Я сделал рандомный выбор начиная с самых мелких по 2-3... и проверкой по базе...

Для моих целей подойдет... т.к. заполнение будет максимум на 30%

brainkiller:
Всего-то 37500 записей! :)

А что, если хранить отдельно параметры последнего добавленного элемента и добавлять каждый последующий с постоянным сдвигом, скажем, в 2000 ячеек?

Error202:
Ага... именто так и сделал... храню последнего, но сдвиг не постоянный а рандомный...

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии