Создание отчёта
Сообщений: 11
• Страница 1 из 2 • 1, 2
Создание отчёта
Можно ли создать отчет, когда нужно подсчитать количество рабочих с, например, высшим образованием или замужем?
За ранее благодарен за ответ.
За ранее благодарен за ответ.
- Администратор
- Сообщения: 518
- Зарегистрирован: 26 янв 2012, 11:22
Re: Создание отчёта
Добрый день!
Можно.
Для этого необходимо знание языка запросов SQL, который позволит создавать в программе более сложные отчеты.
Вот пример отчета "Количество сотрудников, состоящих в браке".
Как это сделать?!
Создается простой отчет, а в окне "Просмотр и редактирование SQL-запроса" нужно изменить стандартный запрос на тот, который Вам необходим. Важно соблюдать количество полей, которые будут выведены в отчете. Если нужно 2 столбца, то в мастере отчетов нужно указать количество полей =2. Можно выбрать любые поля.
Можно.
Для этого необходимо знание языка запросов SQL, который позволит создавать в программе более сложные отчеты.
Вот пример отчета "Количество сотрудников, состоящих в браке".
Как это сделать?!
Создается простой отчет, а в окне "Просмотр и редактирование SQL-запроса" нужно изменить стандартный запрос на тот, который Вам необходим. Важно соблюдать количество полей, которые будут выведены в отчете. Если нужно 2 столбца, то в мастере отчетов нужно указать количество полей =2. Можно выбрать любые поля.
У вас нет доступа для просмотра вложений в этом сообщении.
Re: Создание отчёта
Добрый день!
Нужно вывести в отчет сотрудников, которым выполнилось полных, в интервале от 20 до 30 лет.
Я так понимаю, чтобы сформировать отчет, нужно 2 колонки - ФИО и День рождения.
День рождение задаю с двумя условиями. Первое, дата больше и 01.01.1990. Второе - меньше 01.01.1982.
Жму вывести отчет, пустой лист с заголовками столбцов.
Посоветуйте, что я делаю не так
Нужно вывести в отчет сотрудников, которым выполнилось полных, в интервале от 20 до 30 лет.
Я так понимаю, чтобы сформировать отчет, нужно 2 колонки - ФИО и День рождения.
День рождение задаю с двумя условиями. Первое, дата больше и 01.01.1990. Второе - меньше 01.01.1982.
- Код: Выделить всё
select "PEOPLE"."Фамилия"||' '||"PEOPLE"."Имя"||' '||"PEOPLE"."Отчество" as p1, "PEOPLE"."ДатаРождения" as p2
from "PEOPLE"
where
(("PEOPLE"."ДатаРождения" > '01.01.1990')
and ("PEOPLE"."ДатаРождения" < '01.01.1982'))
Жму вывести отчет, пустой лист с заголовками столбцов.
Посоветуйте, что я делаю не так
- Администратор
- Сообщения: 518
- Зарегистрирован: 26 янв 2012, 11:22
Re: Создание отчёта
Добрый день!
Вам нужен интервал с 82-го по 90-й? Или наоборот, те кто моложе 20 и старше 30?
Если первое, тогда:
(("PEOPLE"."ДатаРождения" > '01.01.1982')
and ("PEOPLE"."ДатаРождения" < '01.01.1990'))
Вам нужен интервал с 82-го по 90-й? Или наоборот, те кто моложе 20 и старше 30?
Если первое, тогда:
(("PEOPLE"."ДатаРождения" > '01.01.1982')
and ("PEOPLE"."ДатаРождения" < '01.01.1990'))
Re: Создание отчёта
Да, Вы правы, все получилось!
А можно в отчете вывести номер по порядку строк?
Функция count не работает с датами?
А можно в отчете вывести номер по порядку строк?
Функция count не работает с датами?
- Администратор
- Сообщения: 518
- Зарегистрирован: 26 янв 2012, 11:22
Re: Создание отчёта
Можно попробовать так:
Сделайте 3 поля.
1-е любое (например, ФИО), 2-е - ФИО, 3-е - Дата рождения.
Затем замените запрос этим:
Напишите о результате, пожалуйста.
Сделайте 3 поля.
1-е любое (например, ФИО), 2-е - ФИО, 3-е - Дата рождения.
Затем замените запрос этим:
select
(
select count(1)
from "PEOPLE" t1
where (t1."Фамилия" <= "PEOPLE"."Фамилия")
and
((t1."ДатаРождения" > '01.01.1982')
and (t1."ДатаРождения" < '01.01.1990'))
) as p1,
"PEOPLE"."Фамилия"||' '||"PEOPLE"."Имя"||' '||"PEOPLE"."Отчество" as p2, "PEOPLE"."ДатаРождения" as p3
from "PEOPLE"
where
(("PEOPLE"."ДатаРождения" > '01.01.1982')
and ("PEOPLE"."ДатаРождения" < '01.01.1990'))
order by p1
Напишите о результате, пожалуйста.
Re: Создание отчёта
Все работает. Класс!
Только если есть одинаковые фамилии, номерует одинаково, но счет не сбивается.
Например:
Только если есть одинаковые фамилии, номерует одинаково, но счет не сбивается.
Например:
У вас нет доступа для просмотра вложений в этом сообщении.
- Администратор
- Сообщения: 518
- Зарегистрирован: 26 янв 2012, 11:22
Re: Создание отчёта
Тогда так:
select
(
select count(1)
from "PEOPLE" t1
where (t1."Фамилия"||' '||t1."Имя"||' '||t1."Отчество" <= "PEOPLE"."Фамилия"||' '||"PEOPLE"."Имя"||' '||"PEOPLE"."Отчество")
and
((t1."ДатаРождения" > '01.01.1982')
and (t1."ДатаРождения" < '01.01.1990'))
) as p1,
"PEOPLE"."Фамилия"||' '||"PEOPLE"."Имя"||' '||"PEOPLE"."Отчество" as p2, "PEOPLE"."ДатаРождения" as p3
from "PEOPLE"
where
(("PEOPLE"."ДатаРождения" > '01.01.1982')
and ("PEOPLE"."ДатаРождения" < '01.01.1990'))
order by p1
Сообщений: 11
• Страница 1 из 2 • 1, 2
Вернуться в Работа с программой
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6