Форум программистов, компьютерный форум CyberForum.ru

PostgreSQL

Войти
Регистрация
Восстановить пароль
 
Trigger_name
0 / 0 / 0
Регистрация: 11.11.2016
Сообщений: 27
#1

Представление для отображения информации о владельцах яхт ФИО, количество яхт, суммарные затраты на содержание - PostgreSQL

21.11.2016, 21:16. Просмотров 295. Ответов 4
Метки нет (Все метки)

вот как делаю Я, но оно чет мне не правильно считает зарплату экипажа

SQL
1
2
3
4
5
6
7
8
9
10
11
12
CREATE VIEW "OwnerView" AS 
SELECT o."FullName", COUNT (y."YachtId"), 
 
(SELECT SUM (p."Salary") AS sal
 FROM "Yacht" AS y , "Crew" AS c, "Positions" AS  p
 WHERE y."YachtId" = c."YachtId" AND c."PositionId" = p."PositionId"
 
) 
FROM "Owner" AS o, "Yacht" AS y
 
WHERE o."OwnerId" = y."OwnerId" 
GROUP BY o."FullName"
В чем ошибка? подскажите пожалуйста!)
Миниатюры
Представление для отображения информации о владельцах яхт ФИО, количество яхт, суммарные затраты на содержание  
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2016, 21:16     Представление для отображения информации о владельцах яхт ФИО, количество яхт, суммарные затраты на содержание
Посмотрите здесь:

Создать представление - PostgreSQL
Имеются 4 таблицы Поставщики Npost Fam Sost Gorod S1 Smit 20 London S2 Jons 10 Paris Детали Ndet Name Color...

Функцией добавить колонку в представление - PostgreSQL
Здравствуйте, очень нужна помощь, пожалуйста помогите:gcray: есть представление и есть функция, нужно с помощю этой функции добавить...

Задача "Рабочее время": Помогите Ивану Ивановичу найти его суммарные затраты времени за год. - C++
есть программа написанная на паскале. мне нужно в c++. пропустил несколько занятий в универе и не могу теперь написать программу. help me. ...

Разработать программу, предназначенную для обработки данных ГАИ о владельцах автотранспорта и зарегистрированных на них автомобилей. О владельцах авто - C++
Разработать программу, предназначенную для обработки данных ГАИ о владельцах автотранспорта и зарегистрированных на них автомобилей. О...

Компонент для отображения разносортной информации из БД - C# ASP.NET
Ребят, задача следующая. Пусть имеется некая БД, поля которой имеют разные типы: текст, число, ричтекст, картинка и т.д. Необходимо все...

Недостаточно ресурсов для отображения информации на экране - VBA
вот он: Sub ColorSelect(cel As Range) Dim CrIndex As Byte With cel If .Value > 50 Then CrIndex = 3 ElseIf .Value >= 25...

Программа для отображения системной информации о компьютере - C++ Builder
Люди, помогите написать программу для отображения системной инофрмации о компьютаре. Ну там информация о процессоре, видео карте и т.д. В...

Подобрать количество мест для выпускников так, чтобы затраты на подготовку были минимальны - MS Excel
помогите пожалуйста с заданием

Разработать программу для отображения системной информации о компьютере - Visual C++
Задача Разработать программу для отображения системной информации о компьютере.

.NET 4.x Создание собственного элемента или шаблона для отображения информации - C# WPF
Передо мной стоит задача: организовать выведение списка объектов в специфическом виде. Каждый объект в этом списке представляет собой дату...

Разработка программы для отображения информации о файловой системе компьютера - Visual C++ БД
Разработка программы для отображение информации о файловой системе компьютера. народ че да как сделать? помогите!!! я вообще в этом...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
grgdvo
539 / 480 / 137
Регистрация: 02.09.2012
Сообщений: 1,398
22.11.2016, 02:04     Представление для отображения информации о владельцах яхт ФИО, количество яхт, суммарные затраты на содержание #2
Вы не связали внешний запрос с внутренним запросом. Зачем два раза "Yacht" ??

SQL
1
2
3
4
5
6
7
8
9
10
11
12
CREATE VIEW "OwnerView" AS 
SELECT
  o."FullName", 
  COUNT (y."YachtId"), 
  (SELECT SUM (p."Salary") AS sal
     FROM "Crew" AS c, "Positions" AS  p
     WHERE c."PositionId" = p."PositionId" AND c."YachtId" = y."YachtId") 
FROM
  "Owner" AS o, "Yacht" AS y
WHERE
  o."OwnerId" = y."OwnerId" 
GROUP BY o."FullName"
Trigger_name
0 / 0 / 0
Регистрация: 11.11.2016
Сообщений: 27
22.11.2016, 08:39  [ТС]     Представление для отображения информации о владельцах яхт ФИО, количество яхт, суммарные затраты на содержание #3
grgdvo, не работает оно жалуется на y."YachtId" в под запросе(
Миниатюры
Представление для отображения информации о владельцах яхт ФИО, количество яхт, суммарные затраты на содержание  
grgdvo
539 / 480 / 137
Регистрация: 02.09.2012
Сообщений: 1,398
22.11.2016, 09:11     Представление для отображения информации о владельцах яхт ФИО, количество яхт, суммарные затраты на содержание #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Что-то я конкретно накосячил в торопях.
Вот так должно быть правильно.

SQL
1
2
3
4
5
6
7
8
CREATE VIEW "OwnerView" AS 
SELECT
  o."FullName", 
  COUNT (DISTINCT y."YachtId"), 
  SUM (p."Salary") "SumSalary"
FROM "Positions" AS  p, "Crew" AS c, "Yacht" AS y, "Owner" AS o
     WHERE p."PositionId" = c."PositionId" AND c."YachtId" = y."YachtId" AND y."OwnerId" = o."OwnerId"
GROUP BY o."FullName"
Trigger_name
0 / 0 / 0
Регистрация: 11.11.2016
Сообщений: 27
22.11.2016, 21:13  [ТС]     Представление для отображения информации о владельцах яхт ФИО, количество яхт, суммарные затраты на содержание #5
grgdvo, спасибо, действительно сработало)
Yandex
Объявления
22.11.2016, 21:13     Представление для отображения информации о владельцах яхт ФИО, количество яхт, суммарные затраты на содержание
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru