|
|
|
Помогите с sql-запросом...
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Ребят, если не сложно, подскажите, пожалуйста, какой должен быть SQL-запрос в таком случае (пишу на C#), база - MS Access. Имеется 3 таблицы, связанные. Но это для темы не важно. Пусть запрос будет к одной таблице. У этой таблицы есть числовое ссылочное поле RefTowns и еще десятков 8 числовых полей. Для простоты пусть будет так: есть поле числовое ссылочное поле RefTowns и еще 1 поле Field1. В результате выполнения запроса нужно получить таблицу, в которой у кортежей с одинаковыми значениями RefTowns будут суммироваться значения поля Field1. Т.е. пусть у нас всего 120 кортежей, в которых значения RefTowns встречаются от 1 до 10, а значения Field1 могут быть любыми, а на "выходе" нужна таблица с 10ю строками согласно значениям RefTowns, в которых суммируется данные поля Field1 для одинаковых значений RefTowns. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2007, 22:16 |
|
||
|
Помогите с sql-запросом...
|
|||
|---|---|---|---|
|
#18+
SELECT REFTown, SUM(Field1) as SummField From Table1 GROUP BY REFTown ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2007, 22:59 |
|
||
|
Помогите с sql-запросом...
|
|||
|---|---|---|---|
|
#18+
Спасибо большое! Сам не пойму как, но про GROUP BY забыл напрочь. Запрос выполнил - вроде бы работает. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2007, 23:06 |
|
||
|
Помогите с sql-запросом...
|
|||
|---|---|---|---|
|
#18+
С одним вопросом помогли - спасибо большое! Но у меня появился другой вопрос. Значит, проблема такова. Как я уже говорил, пусть (для простоты) главная таблица MainTable состоит из двух полей - Field1 и RefTowns. Поле RefTowns ссылается на ключевое поле другой таблицы - CitiesAndRegionsTable, состоящей тоже из двух полей - ключевого KeyCityNumber (числовое) и CityOrRegionName (текстовое, содержит название города или региона). Так вот, в результате запроса нужно получить таблицу, в которой будут не только суммы, "собранные" по городам, но и сами названия городов. Получается что-то вроде такого: SELECT SUM(MainTable.Field1), CitiesAndRedionsTable.CityOrRegionName FROM (MainTable INNER JOIN CitiesAndRegionsTable ON MainTable.RefTowns = CitiesAndRedionsTable.KeyCityNumber) GROUP BY RefTowns Естественно, запрос не обрабатывается, т.к. неправильный - что не правильно, выделил жирным шрифтом. Количество кортежей в результирующей таблице естественно равно количеству строк в таблице CitiesAndRedionsTable, т.к. группировка идет по ключам. Как в этом случае поступить? Спасибо большое! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2007, 14:12 |
|
||
|
|

start [/forum/topic.php?fid=17&fpage=95&tid=1352776]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
24ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 288ms |

| 0 / 0 |
