
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
21.11.2002, 16:48:37
|
|||
|---|---|---|---|
Сравнение двух таблиц |
|||
|
#18+
Уважаемые господа, В нашей конторе учет ведется в двух разных системах, грубо говоря один раз для налоговой инспекции и второй для иностранных акционеров. Существует проблема сверки проводок в этих системах. Опуская остальные подробности, нужно сравнить две таблицы: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. (где b и y – суммы проводок) и найти не проведенные проводки. В таблицах, естественно, есть и другие поля, но беда в том, что для анализа пригодны только суммы. Код: plaintext 1. 2. 3. 4. 5. такой запрос хорош всем, кроме того, что не учитывает возможности проводок с одинаковыми суммами, т.е. если в одной из таблиц есть n проводок с некой суммой, а в другой m проводок с такой же суммой, то он их не покажет, а хотелось бы отобразить m-n любых из этих проводок. Я хочу анализировать результат запроса: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. но не могу придумать, как это сделать... или можно придумать лучший способ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.11.2002, 17:16:41
|
|||
|---|---|---|---|
Сравнение двух таблиц |
|||
|
#18+
Вам требуется сперва решить теоретическую задачу - придумать/найти способ уникальной идентификации проводок, однозначной в обеих системах. Тогда задача решиться просто и быстро. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.11.2002, 17:27:30
|
|||
|---|---|---|---|
Сравнение двух таблиц |
|||
|
#18+
Дело в том, что уникальная идентификация проводок невозможна в связи с принятой системой учета, изменить которую также не представляется возможным. :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.11.2002, 17:47:01
|
|||
|---|---|---|---|
Сравнение двух таблиц |
|||
|
#18+
Вычисли HASH по полям которые у тебя отвечают за подлинность проводок и сравнивай HASH ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2002, 14:44:41
|
|||
|---|---|---|---|
|
|||
Сравнение двух таблиц |
|||
|
#18+
Если не имеет значение какие из одинаковых проводок одной системы соответсвуют таким же из другой, то добавь поле счетчика для одинаковых проводок в каждой системе и заполняй перед сравнением. Например: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2002, 15:54:56
|
|||
|---|---|---|---|
Сравнение двух таблиц |
|||
|
#18+
2 mahoune: Пожалуйста, немножко подробней с этого места. IMHO, HASH применительно к SQL Server это алгоритм, которым он обрабатывает JOIN в том случае, если оптимизатор запросов сочет это полезным. 2 Michael Hopgarden: Спасибо, на мой взгляд весьма элегантно, хотя я и надеялся обойтись без временных таблиц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2002, 16:12:59
|
|||
|---|---|---|---|
Сравнение двух таблиц |
|||
|
#18+
С ходу не нашел аналога в MSSQL функции подобной MD5 в UNIX или в MySQL. Но смысл от этого не меняется! Разберись какие поля отвечают за уникальность записи, сложи их и возьми по ним MD5 а потом сравнивай в базах одинаковые! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2002, 16:58:14
|
|||
|---|---|---|---|
Сравнение двух таблиц |
|||
|
#18+
Извините, только мысли... Ну, если подумать, какая из таблиц заполняется первой? Для налоговой или для партнеров? Или вообще эти данные дают разные службы сами по себе? Как-то не верится, что дат нету... >добавь поле счетчика для одинаковых проводок Это проблемы не снимает, хотя уменьшает возможность не отследить какую-либо проводку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2002, 17:24:19
|
|||
|---|---|---|---|
Сравнение двух таблиц |
|||
|
#18+
2 mahoune: Я так понял, что это способ предложенный Michael Hopgarden, но несколько усложненный. 2 Лëля: Просто разные бухгалтеры берут исходные документы и бьют проводки. Даты есть конечно, но в один день может быть неограниченное количество проводок с одинаковой суммой и одна проводка может быть вбита разными бухгалтериями в разные дни. Предложение Michael Hopgarden вполне замечательное, я в экстазе! Всем спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=46&tablet=1&tid=1818568]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
38ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
26ms |
get tp. blocked users: |
1ms |
| others: | 241ms |
| total: | 334ms |

| 0 / 0 |
