SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 06.06.2021 13:20:58

Phuzys
Участник
Зарегистрирован: 06.06.2021
Сообщений: 2

Помогите, пожалуйста, решить задание по SQL. Необходима проверка запроса.

Есть начальное условие выданное "сверху":

Дана таблица System, в которой содержатся имена систем. Количество систем больше 2

System
ID    Sys_Name
1    Система1
2    Система2
   
   
Дана таблица Message, в которой содержатся сообщения, отправляемые системой
Ключ: System.id = Message.sysId   

Id        SysId    Message
2    1    TestMsg1
3    1    TestMsg2
5    2    TestMsg457
17    3    SUM=451

Дана таблица Dictoinary, в которой каждой системе соответствует код справочника
Ключ: System.Id = Dictionary.SysId

Dictionary
Id    SysId    Code
3    1    SYSTEM_OUT
6    2    SYSTEM_IN
1    3    CALCULATOR
2    4    SYSTEM_Z


Задача: зная 2 кода систем - SYSTEM_OUT и SYSTEM_IN– необходимо написать SQL запрос, который выведет имена указанных систем и количество сообщений, переданных каждой системой.

Sys_Name    Количество сообщений
   
   
Создал эти 3 таблицы, но не уверен в верном выбранном Prymary Key   

Мой запрос - решение выглядит так:

select Sys_Name, `Количество сообщений` from
(select SysId, count(*) `Количество сообщений` from Message where SysId in (select SysId from Dictionary where code in ('SYSTEM_OUT','SYSTEM_IN')) group by SysId) t join System s on t.sysId=s.id;

получаю результат:
Sys_Name    Количество сообщений
Система1   2
Система2   1

Смещает меня оговорка в первом условии "систем больше 2" и слишком низкое количество сообщений.
Может сможете подскзаать, поправить?

Неактивен

 

#2 06.06.2021 15:53:26

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Помогите, пожалуйста, решить задание по SQL. Необходима проверка запроса.

Phuzys написал:

Смещает меня оговорка в первом условии "систем больше 2" и слишком низкое количество сообщений.

ни на что не влияет
добавьте тестовых сообщений для проверки

Phuzys написал:

Может сможете подскзаать, поправить?

запрос работает верно, поправлять не нужно

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson