Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 19.11.2015
Сообщений: 63

Запрос на группировку данных

26.09.2016, 09:29. Показов 1267. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем добрый день!

У меня есть таблица вида:
ФИО Причина
------------- ----------------
Иванов  
Иванов Ошибка
Иванов  
Федоров Ошибка
Федоров Ошибка
Федоров  
Смирнов  
Смирнов  

Необходимо создать запрос, который будет отображать Фамилию сотрудника, Сколько всего его имя раз фигурирует в таблице и сколько о допустил ошибок. Если ошибок нет, то должно выводится либо 0, либо пустота.
То есть в конечном итоге должно быть так:

ФИО Кол-во Ошибки
------------ ------------ -------------
Иванов 3 1
Федоров 3 2
Смирнов 2 0

Заранее спасибо
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.09.2016, 09:29
Ответы с готовыми решениями:

Запрос на группировку
Есть таблица: Вот ее запрос: Необходимо сделать: Помогите пожалуйста.

Запрос на группировку
Здравствуйте . У меня есть 3 таблицы : Должность , Предмет , Преподаватели Нужно сделать такой запрос : сгруппировать всех...

Запрос на выборку данных которые попали в группировку
select * from SickList SL inner join( select TABNO, COUNT(*) as cnt, SUM(DATEDIFF(DD, DATN, DATK)+1) as sm from SickList where (GOD *...

11
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
26.09.2016, 09:39
Лучший ответ Сообщение было отмечено korolyovanton как решение

Решение

T-SQL
1
select фио, count(фио) as количество, sum(iif(причина = "ошибка",1,0)) as итого_ошибок from таблица group by фио
3
0 / 0 / 0
Регистрация: 19.11.2015
Сообщений: 63
26.09.2016, 10:03  [ТС]
Цитата Сообщение от alvk Посмотреть сообщение
T-SQL
1
select фио, count(фио) as количество, sum(iif(причина = "ошибка",1,0)) as итого_ошибок from таблица group by фио
В этом случае Кол-во ошибок пишет везде 0
0
Эксперт MS Access
 Аватар для ltv_1953
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
26.09.2016, 10:23
Все нормально работает
фиоколичествоитого_ошибок
Иванов31
Смирнов20
Федоров32
Может у Вас вместо "ошибка" что-то другое в таблице?
1
0 / 0 / 0
Регистрация: 19.11.2015
Сообщений: 63
26.09.2016, 11:08  [ТС]
Цитата Сообщение от ltv_1953 Посмотреть сообщение
Может у Вас вместо "ошибка" что-то другое в таблице?
Да, прошу прощения, я затупил) Все отлично работает! большое спасибо!
0
0 / 0 / 0
Регистрация: 19.11.2015
Сообщений: 63
27.09.2016, 13:21  [ТС]
Цитата Сообщение от alvk Посмотреть сообщение
T-SQL
1
select фио, count(фио) as количество, sum(iif(причина = "ошибка",1,0)) as итого_ошибок from таблица group by фио
А ещё подскажите пожалуйста, какой запрос необходимо написать, чтобы не выводились данные по фамилиям, которые не допустили ошибки?
0
 Аватар для VinniPuh
9132 / 6156 / 593
Регистрация: 27.03.2013
Сообщений: 20,013
27.09.2016, 13:56
В условии отбора
=0
0
0 / 0 / 0
Регистрация: 19.11.2015
Сообщений: 63
27.09.2016, 13:59  [ТС]
Цитата Сообщение от PuhKMV Посмотреть сообщение
В условии отбора
=0
Не очень-то понятно)
0
 Аватар для VinniPuh
9132 / 6156 / 593
Регистрация: 27.03.2013
Сообщений: 20,013
27.09.2016, 14:05
Открываете вышеприведенных запрос в режиме конструктора и в строчке - Условие отбора , под полем, где вычисляется количество ошибок пишите равно нулю, но только не буковками, а именно
=0
Ведь если не допущены ошибки, то запрос показывает в данном поле - Нолик, а если ошибки есть, то уже не Нолик.
Или вы что то другое хотели спросить?
0
Эксперт MS Access
26827 / 14507 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
27.09.2016, 14:10
Цитата Сообщение от korolyovanton Посмотреть сообщение
подскажите пожалуйста, какой запрос необходимо написать, чтобы не выводились данные по фамилиям, которые не допустили ошибки
SQL
1
2
3
4
SELECT фио, COUNT(фио) AS количество, SUM(iif(причина = "ошибка",1,0)) AS итого_ошибок 
FROM таблица 
GROUP BY фио
HAVING SUM(iif(причина = "ошибка",1,0))>0
0
 Аватар для VinniPuh
9132 / 6156 / 593
Регистрация: 27.03.2013
Сообщений: 20,013
27.09.2016, 14:15
Цитата Сообщение от korolyovanton Посмотреть сообщение
...чтобы не выводились данные по фамилиям, которые не допустили ошибки?...
А, извиняюсь, прочитал, типа - Вывести тех, кто НЕ ДОПУСТИЛ Ошибок.
0
0 / 0 / 0
Регистрация: 19.11.2015
Сообщений: 63
27.09.2016, 14:31  [ТС]
Цитата Сообщение от mobile Посмотреть сообщение
SQL
1
2
3
4
SELECT фио, COUNT(фио) AS количество, SUM(iif(причина = "ошибка",1,0)) AS итого_ошибок
FROM таблица
GROUP BY фио
HAVING SUM(iif(причина = "ошибка",1,0))>0
Спасибо!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.09.2016, 14:31
Помогаю со студенческими работами здесь

Наверно запрос на группировку?
Имеется такая таблица. id | alias | title | id_parent 1 | alias1 | title1 | 0 2 | alias2 | title2 | 1 3 | alias3 | title3 | 1 ...

SQL запрос на группировку
Ребят нужна помощь, не могу понять, почему не группируются строки: SELECT Таблица2.Код, Таблица1.Фамилия, Таблица1.Отчество AS Должник...

как сделать группировку данных?
попался файлик вот с такой штучкой. не подскажете как это было сделано?

Как можно сделать группировку данных в Excell
Привет всем. Может кто подскажет: как написать код макроса, который позволял бы в Excell группировать неупорядоченные данные в таблице по...

Запрос на "сортировку/группировку" по 2 полям
Здравствуйте! Есть такие таблицы: CREATE TABLE privilege ( id BIGINT UNSIGNED PRIMARY KEY NOT NULL AUTO_INCREMENT, ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача №1: при указании работ (справочник РаботыПоРемонтуСпецтехники),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru