У меня есть БД со столбцом STATUS и 3 условиями:
-1 = ВОССТАНОВЛЕНО
0 = НЕЙТРО
1 = УТВЕРЖДЕНО
Мне нужно разделить все регистры на 2 набора:
SET 1 (MAIN) - это таблица «MAIN», имеющая ограничение в 5 регистров. Но ВСЕ УТВЕРЖДЕНО должно быть в этой таблице - даже если у нас их больше 5 - и здесь не может быть НИКАКОГО РЕГИСТРАЦИОННОГО регистра.
например:
- Если у нас есть 10 УТВЕРЖДЕНО - в главной таблице будет 10 ВСЕХ УТВЕРЖДЕНО.
- Если у нас есть 2 УТВЕРЖДЕНО - основная таблица будет иметь 2 ВСЕХ УТВЕРЖДЕНО + 3 НЕЙТРОСА. (5 ВСЕГО) - Но если у меня есть только 1 Нейтрос и 10 REPPROVED, например, в таблице будет только 2 ALL APPROVED + 1 NEUTROS. (3 регистра).
SET 2 - будет ВСЕ ОБНОВЛЕНО + остальная часть НЕЙТРОСА - без ограничения регистров.
Ситуация 1: БОЛЬШЕ СОСТОЯНИЯ 1, ЧЕМ ПРЕДЕЛ РЕГИСТРА (5)
ID - NAME - STATUS
1 - John - 1
2 - Mary - 1
3 - Mike - 1
4 - James - 1
5 - Helen - 1
6 - Fred - 1
7 - Nick - 1
8 - Gio - 0
9 - Rick - 0
10 - May - -1
SET 1 будет: (ВСЕ СТАТУС 1)
ID - NAME - STATUS
1 - John - 1
2 - Mary - 1
3 - Mike - 1
4 - James - 1
5 - Helen - 1
6 - Fred - 1
7 - Nick - 1
SET 2 будет:
8 - Gio - 0
9 - Rick - 0
10 - May - -1
ситуация 2: (ЗАПОЛНИТЬ СТОЛ СОСТОЯНИЕМ 0)
ID - NAME - STATUS
1 - John - 1
2 - Mary - 1
3 - Mike - 1
4 - James - 0
5 - Helen - 0
6 - Fred - 0
7 - Nick - 0
8 - Gio - 0
9 - Rick - 0
10 - May - -1
SET 1 будет: (ВСЕ СТАТУС 1 + 2 СО СТАТУСОМ 0)
ID - NAME - STATUS
1 - John - 1
2 - Mary - 1
3 - Mike - 1
4 - James - 0
5 - Helen - 0
SET 2 будет:
6 - Fred - 0
7 - Nick - 0
8 - Gio - 0
9 - Rick - 0
10 - May - -1
и затем - ситуация 3: (ВСЕ СОСТОЯНИЕ 1 + СОСТОЯНИЕ 0 Меньше, чем предел регистра - 5)
ID - NAME - STATUS
1 - John - 1
2 - Mary - 1
3 - Mike - 1
4 - James - 0
5 - Helen - -1
6 - Fred - -1
7 - Nick - -1
8 - Gio - -1
9 - Rick - -1
10 - May - -1
SET 1 будет: (ВСЕ СТАТУС 1 + 1 СО СТАТУСОМ 0 - только 4 регистра)
ID - NAME - STATUS
1 - John - 1
2 - Mary - 1
3 - Mike - 1
4 - James - 0
SET 2 будет:
5 - Helen - -1
6 - Fred - -1
7 - Nick - -1
8 - Gio - -1
9 - Rick - -1
10 - May - -1
есть идеи?