Подскажите с организацией структуры БД.
Dmitri 18.07.2004 16:24
Есть таблица лотерейных билетов(ticket). Каждый билет принадлежит какому-то тиражу(draw) и заказу (order)
Нужно, что бы заказанные билеты в каждом тираже нумеровались последовательно, поэтому у каждого тиража есть текущий номер билета (draw.current).
После оплаты заказа нужно все билеты в этом заказе пронумеровать в соответствии с тем, какому тиражу они принадлежат.
Сейчас я вижу только один алгоритм:
1. Берем список билетов в этом заказе
2. Берем список тиражей, билеты которого есть в этом заказе.
3. Для каждого тиража в заказе,
а. узнаем текущий номер билетов в этом тираже (draw.current),
б. Для каждого билета в этом тираже этого заказа проставляем номера, увеличивая текущий номер на 1,
в. увеличиваем текущий номер билетов в тираже на кол-во билетов этого тиража в текущем заказе.
Таким образом, получается много запросов:
[билетов в заказе] + [тиражей в заказе] * 2 + 2
Если в заказе будет 3 билета в 3х тиражах, получится 11 запросов в БД.
Уверен, есть какая-то хитрость в построении такой БД, что бы уменьшить кол-во запросов и ускорить работу.
Есть мысли?
- Подскажите с организацией структуры БД., Dmitri 18.07.2004 16:24