|
Объединение данных из разных таблиц в одну с подсчётом суммы
|
|||
---|---|---|---|
#18+
Помогите! Есть несколько таблиц, в каждой User name and User Punkte. Общее количество пунктов (Sum) для каждого USERa должно обновляться в одной общей таблице, которая также содержит User name and User Punkte. Как лучше сделать?! ... |
|||
:
Нравится:
Не нравится:
|
|||
16.10.2002, 15:40 |
|
Объединение данных из разных таблиц в одну с подсчётом суммы
|
|||
---|---|---|---|
#18+
запрос на обьединение?....с групировкой=) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.10.2002, 21:18 |
|
Объединение данных из разных таблиц в одну с подсчётом суммы
|
|||
---|---|---|---|
#18+
Да, группировка с объединением. Есть 34 таблицы, куда пользователи вносят свои данные, эти данные затем мной оцениваются пунктами. За правильный ответ столько-то и т.д. Есть таблица общая, где собраны все USERы с их данными и общим количеством пунктов для каждого . Общее количество пунктов насчитывается по 34 таблицам. Основная трудность в том, что если имя USERa не встречается хотя бы в одной из 4 таблиц, выдаётся ответ, что такого USERa нет. Что-то я делаю не так. Понятно, если такого имени в одной из таблиц нет, то при подсчёте этo должно приниматься за ноль, но как это отобразить в SQL-запросе? Я ещё не имею достаточного опыта, поэтому BITTE помогите! ... |
|||
:
Нравится:
Не нравится:
|
|||
17.10.2002, 13:58 |
|
Объединение данных из разных таблиц в одну с подсчётом суммы
|
|||
---|---|---|---|
#18+
Если разбираешься в SQL то вместо Код: plaintext 1. 2. 3. 4. 5.
Код: plaintext 1. 2. 3. 4.
А если просто в Access. Надо в самом запросе нажать на связь между таблицами и в параметрах поменять отношение "ОДИН к ОДНОМУ" на "ОДИН к МНОГИМ" ... |
|||
:
Нравится:
Не нравится:
|
|||
17.10.2002, 15:17 |
|
Объединение данных из разных таблиц в одну с подсчётом суммы
|
|||
---|---|---|---|
#18+
Спасибо за ответ, но примерно по тaкой схеме я и писала: Код: plaintext 1. 2. 3.
В ответе содержатся только те USERы, которые участвовали, а если один участвовал в один день (table-spiel8), a не участвовал в другой день (table-spiel9), то он не включается в список выборки! Какие бы соединения я ни создавала, как бы ни меняла SQL-запрос - ответ один. Я работаю только с SQL-Server 7.0; 2000, а теперь не мoгу справиться с Access 97! А когда я в окне SQL-запроса пытаюсь вставить вместо INNER Join - LEFT Join, он мне отвечает что не поддерживает это объединение! (Access - немецкий, как перевести точнее не знаю.) Но чего-то явно не хватает... ... |
|||
:
Нравится:
Не нравится:
|
|||
17.10.2002, 17:18 |
|
Объединение данных из разных таблиц в одну с подсчётом суммы
|
|||
---|---|---|---|
#18+
Определенно, попробуй графически поставить связи один ко многим! А там посмотрим, как надо писать правильно! ... |
|||
:
Нравится:
Не нравится:
|
|||
17.10.2002, 17:23 |
|
Объединение данных из разных таблиц в одну с подсчётом суммы
|
|||
---|---|---|---|
#18+
Вот что у меня получилось по быстрому! Код: plaintext 1.
При этом он выбрал все из TBL_USER и к ним совпадающие записи из TBL_1 и TBL_2 по ключу us_id . А если такой записи нет - выводил в поле значение NULL ... |
|||
:
Нравится:
Не нравится:
|
|||
17.10.2002, 17:32 |
|
Объединение данных из разных таблиц в одну с подсчётом суммы
|
|||
---|---|---|---|
#18+
Огромное спасибо!!! Когда установила, как ты сказал, вcё пошло! Ну не знаю я Access! А можно теперь как-то включить сюда запрос на автоматическое обновление суммы пунктов в таблице Users? Или это невозможно в Access? Благодарю! ... |
|||
:
Нравится:
Не нравится:
|
|||
17.10.2002, 17:53 |
|
Объединение данных из разных таблиц в одну с подсчётом суммы
|
|||
---|---|---|---|
#18+
Не не выйдет помоему! Он можел либj SELECT либо UPDATE! ... |
|||
:
Нравится:
Не нравится:
|
|||
17.10.2002, 17:56 |
|
Объединение данных из разных таблиц в одну с подсчётом суммы
|
|||
---|---|---|---|
#18+
Очень жаль, SQL-Server делает такое с помощью хранимых процедур, но если кто что знает буду очень признательна. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.10.2002, 18:07 |
|
Объединение данных из разных таблиц в одну с подсчётом суммы
|
|||
---|---|---|---|
#18+
Так на чем мы остановились? Запрос суммирующий данные из кучи таблиц готов? Осталось обновить данные в общей таблице? Если прямо сделать INNER JOIN общей с этим запросом и неписать Set общ.Puncte = запрос.Puncte не пройдет... Попробуйте вставить записи запроса в промежуточную таблицу (предварительно ее очищая или создавая ее только на время выполнения обновления), уже ее данными обнвляйте общую таблицу (а нужна ли общая? может эта промежуточная и выполнит роль общей?) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2002, 10:59 |
|
Объединение данных из разных таблиц в одну с подсчётом суммы
|
|||
---|---|---|---|
#18+
есть такая фраза: А знаете ли вы что? 1. в sql- серверах есть возможность использовать триггеры. триггер может при изменении данных в одной таблице выполнять обновления в другой. (например обновлять таблицу со статистикой) 2. в комплекте офиса 2000 и выше прилагается SQL - сервер для win98 - MSDE 3. аксесс замечательно с ним работает. хотя это совсем не по теме, и наверное никому не интересно .. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2002, 11:34 |
|
|
start [/forum/topic.php?fid=45&msg=32060148&tid=1683116]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
26ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 307ms |
total: | 422ms |
0 / 0 |