|
|
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
Народ! А вот как бы так извернуться: есть табличка - классификатор проводок: Дт СубДт Кт СубКт Класс 50 01 62 01 Оплата1 50 01 62 02 Оплата1 50 01 62 03 Оплата1 50 02 62 01 Оплата2 и т.д. Она объединяется по первым 4 полям с огромной таблицей проводок, и на выходе получаем группы "Класса". Вот как бы сделать, чтобы в полях СубДт/Кт можно было поставить "*", и тогда объединение этого "классификатора" прошло бы с любыми субсчетами указанных счетов? То есть сжать таблу до вида Дт СубДт Кт СубКт Класс 50 * 62 * Оплата1 50 02 62 01 Оплата2 Оторвать связи по полям нельзя - в некоторых случаях НУЖНА детализация по субсчетам, а в нектороых нет. Поделитесь опытом, как это делается... Спасибки! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2003, 10:15 |
|
||
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
если я правильно понял, то имеется ввиду связь многие-ко-многим, а она реализуется через дополнительную таблицу соответствий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2003, 10:32 |
|
||
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
Это усложнит решение - легче перечислить все варианты в одной таблице, чем выстраивать еще одну. А хочется упростить... Люди! У уравнения решений нет?.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2003, 10:34 |
|
||
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
ты же сам написал >Оторвать связи по полям нельзя а хочешь попроще. тут и посложнее не так просто. во сказанул, надо запомнить :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2003, 10:38 |
|
||
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
A что мешает в в одних случаях использовать обьединение по 2 полям, а в других по 4 ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2003, 10:56 |
|
||
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
Ничего не мешает, кроме усложнения структуры ;))) Проще усложнить данные, размножив по числу подмножества, которое и хочу залепить мифической "звездой". Корифеи молчат... Значит, нет решений... 8(((( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2003, 11:01 |
|
||
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
ААААААААААААААААААААААаааааааааааааааааа Проще усложнить данные, размножив по числу подмножества, которое и хочу залепить мифической "звездой". Я это распечатаю и на стенку повешу. Как мантру буду читать. На все вопросы начальства буду эту фразу показывать. Начальство будет уходить в недоумении. АААААААААААААААААааааааааааааааа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2003, 11:10 |
|
||
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
Проще усложнить данные, размножив по числу подмножества, которое и хочу залепить мифической "звездой". Старик Кодд перевернулся бы а гробу ,если бы это услышал. Наверное я чего не понимаю,но написать один лишний запрос- это "усложнение" структуры? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2003, 11:14 |
|
||
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
Не_усложнение?.. Адын запрос?.. Смотрим: 1) Так, как есть (по 4 полям, с полной детализацией) - это раз 2) Еще раз объединить - только по Дт и Кт (для чего и нужно "*") - это два 3) Объединить результат 1 и 2 4) Выловить ДУБЛИКАТЫ, вошедшие в оба запроса (вообще даже не думал, как 8-(_) И где же адын?.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2003, 11:51 |
|
||
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
Цитирую "в некоторых случаях НУЖНА детализация по субсчетам"-это случай 1, "а в нектороых нет."-случай 2 Зачем 3 и 4? на всякий случай (для 4) -union устраняет дубликаты автоматически ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2003, 12:04 |
|
||
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
Все не так просто. Допустим, мне все равно, пришли ли деньги по 51/01, 51/02 или 51/03 - вот здесть и есть "все равно" или 51/*, а поступление материалов на 41/01 41/02 41/03 хочу видеть всегда с полной детализацией. Всегда будет объединение, понимаешь, народ?.. А это значит 2 (две) таблицы-классификатора: 1-я : 2 поля - Дт Кт 2-я : 4 поля как в исходной или два запроса для фильтрации из одной таблы "что объединяем по два, а что - по 4" ИМХО, Лох, это есть усложнение... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2003, 12:23 |
|
||
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
Заведи таблицу, в которую запиши номера счетов где тебе все-равно (50 в данном случае). Или наоборот - где не все равно А дальше - уже извращайся на языке SQL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2003, 12:36 |
|
||
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
Зачем вторая табличка ? Просто в первой вместо * ставь NULL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2003, 19:24 |
|
||
|
"Звезда" в объединении
|
|||
|---|---|---|---|
|
#18+
Зачем вторая табличка ? Просто в первой вместо * ставь NULL Профанация данных или апструкция.. я уже запутался ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 01:02 |
|
||
|
|

start [/forum/topic.php?fid=45&tid=1680314]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
| others: | 227ms |
| total: | 345ms |

| 0 / 0 |
