Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 SQL запрос  [new]
xxSKMxx
Member

Откуда:
Сообщений: 3
Здравствуйте помогите пожалуйста
Суть такая есть 4 таблицы:
Автор(ID,ФИО,Возраст,Звание)
Картины(ID,Название,Роспись)
Залы(ID,Название,Координаты,Площадь)
Расположение(ID,ID_Автора,ID_Картины,ID_Зала)
Нужно сделать запросы:Выведите список авторов, картины которых находятся в разных залах
Выведите все о зале где находится наибольшее количество картин
Выведите название залов в которых демонстрируются картины только одного автора
16 янв 14, 20:19    [15426751]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
Glory
Member

Откуда:
Сообщений: 104751
Срок сдачи когда ?
16 янв 14, 21:55    [15427069]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
AlexandrPlus
Member

Откуда:
Сообщений: 7887
xxSKMxx,

спортивного интереса нет - это задачи для сдачи зачета

Давай что ли по 100 рублей! (На yandex-кошелек)

select А.ФИО 
from Автор А, Расположение Р 
where А.ID = Р.ID_Автора
group by А.ФИО 
having (count(distinct ID_зала)>1)


вариант решения первой

Кинешь 300 р на кошелек - получишь остальные две!
16 янв 14, 22:19    [15427173]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
AlexandrPlus
Member

Откуда:
Сообщений: 7887
xxSKMxx,

отправишь (яндекс-кошелек 41001336393410), в форум отпиши,
в пост будут решение - ну и форум, если что не так, оценит
Картинка с другого сайта.
16 янв 14, 23:00    [15427352]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
AlexandrPlus,

Для этого есть отдельный форум.
17 янв 14, 00:12    [15427554]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
AlexandrPlus
Member

Откуда:
Сообщений: 7887
Mnior
AlexandrPlus,

Для этого есть отдельный форум.

есть веб-порталы, где решают задачки вообще по всем предметам, где есть семинары с задачами, курсовые, семестровые, ...
где решатели удаленные (фрилансеры как бы)

ЗЫ Наверно вот когда у меня были студенты и студентки (младших курсов) знакомые из двух универов - видимо
"морально разложили" (в охотку размяться в решении задач и деньги быстро как укроп на огороде собрать
Картинка с другого сайта.) решать задачки по математике за деньги (через них нескольким десяткам нарешал).

Ну и мораль есть - пусть видят, что знания и опыт денег стоят. Картинка с другого сайта.
17 янв 14, 07:31    [15428082]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
AlexandrPlus

Может тупо просто послать нерадивого в соответствующий форум, чем спамить картынками и своими причиндалами номерами кошельков?
(я се представляю 100500 таких ответов в стиле AlexandrPlus, на каждый говновопрос)
А на другие сайты как бэ моветон, особенно "конкурирующие", но я тут не спец, просто соблюдаю учтивую осторожность.

Тему или выпилить, или перенести.
17 янв 14, 13:00    [15429491]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
AlexandrPlus
Member

Откуда:
Сообщений: 7887
Mnior
AlexandrPlus

Может тупо просто послать нерадивого в соответствующий форум, чем спамить картынками и своими причиндалами номерами кошельков?
(я се представляю 100500 таких ответов в стиле AlexandrPlus, на каждый говновопрос)
А на другие сайты как бэ моветон, особенно "конкурирующие", но я тут не спец, просто соблюдаю учтивую осторожность.

Тему или выпилить, или перенести.


в общем это проблема многих форумов и где как её решают, когда бывает вал таких вопросов
от студентов обычно, которым типа сдать зачет и забыть

вот даже философов-филологов достали на dxdy.ru топика "Решите задачи по логике" (в Универах
логика философами читается на младших курсах)

Подраздел "для начинающих", ...?

Мне кажется это должно быть как музыкальный автомат - опустил маленькую денюжку и получил музычку. 8-)


В общем все отвечающие также получают пользу, обдумывая задачу (но не домашние задания кого-то),
меняя при этом свои представления в лучшую сторону, а также вступают в некоторые доверительные отношения с форумом - ты ответил полезно и тебе также однажды обязательно полезно, ответят, еще обсудить новости по предмету, ... т.д.
17 янв 14, 13:38    [15429835]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
o-o
Guest
AlexandrPlus
В общем все отвечающие также получают пользу, обдумывая задачу (но не домашние задания кого-то),
меняя при этом свои представления в лучшую сторону

о чем это представления в лучшую сторону-то менять?
о том, как сбылось предсказание проф.Баранского "доучивайтесь,
детишечки, скоро по стране оставят лишь 4 класса церковно-приходской школы"???
они и видно.
раньше хоть писать умели...
тьфу
17 янв 14, 13:55    [15429975]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
AlexandrPlus,

Мне кажется вы не очень понимаете ситуацию.
Есть разные сайты, с разными направленностью и целью.
По мне, SQL.RU позиционируется как сайт для профессионалов, а не как налог на образование.
Можно направить некоторую часть в форум "Работа", но остальных отшить - Или ты сам научишься решать задачу, или пошёлнах.
А все эти инсинуации про пользу бабла - оставьте для других.

Уточню, тут задают сложные вопросы как получить понимание вещей, которые возможно нигде явно не лежит разжёванно, а с другой отвечающие заходят для поддержания своего же тонуса. Это взаимовыгодно, не платить же нам за сами вопросы?
Обыкновенный бартер, и пусть финансовые системы останутся без награбленных %%.
17 янв 14, 14:30    [15430291]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
AlexandrPlus,

Если вы можете предложить как эффективно отсеять перенаправить поток людей, попавших явно не туда, как эти школьнеги, то слушаем с внимательностью.
17 янв 14, 14:34    [15430315]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
xxSKMxx
Member

Откуда:
Сообщений: 3
Я же не прошу именно решать я прошу помочь! Дать сайт или книжку хорошую к примеру по Sql.
18 янв 14, 16:33    [15433705]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
Алексей Смирнов
Member

Откуда: г. Челябинск
Сообщений: 697
xxSKMxx,

"Выведите список авторов, картины которых находятся в разных залах".
Если имеется ввиду, что картины автора размещены более, чем в одном зале, то как-то так (я вообще работаю в MySQL, но думаю, что язык запросов для Microsoft SQL отличается не сильно):

SELECT [A].[ID], [A].[ФИО] AS [FIO], [A].[Возраст] AS [Age], [A].[Звание] AS [Rank] FROM [Автор] AS [A] INNER JOIN 
(SELECT [R].[ID], Count([R].[ID_Зала]) AS [CountRooms] FROM [Расположение] AS [R] GROUP BY [R].[ID]) AS [RM]
ON [A].[ID]=[RM].[ID]
WHERE [RM].[CountRooms]>1;
18 янв 14, 16:55    [15433740]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
Алексей Смирнов
Member

Откуда: г. Челябинск
Сообщений: 697
Пардон, немного с AuthorID ошибочка вышла, вот исправленный вариант:

SELECT [A].[ID], [A].[ФИО] AS [FIO], [A].[Возраст] AS [Age], [A].[Звание] AS [Rank] FROM [Автор] AS [A] INNER JOIN 
(SELECT [R].[ID_Автора] AS [AuthorID], Count([R].[ID_Зала]) AS [CountRooms] FROM [Расположение] AS [R] GROUP BY [R].[ID_Автора]) AS [RM]
ON [A].[ID]=[RM].[AuthorID]
WHERE [RM].[CountRooms]>1;
18 янв 14, 16:58    [15433745]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
ultima
Member

Откуда: СПб
Сообщений: 121
xxSKMxx
Я же не прошу именно решать я прошу помочь! Дать сайт или книжку хорошую к примеру по Sql.


для начала подойдет и справочник на этом сайте
по первому сообщению я тоже не понял в чем помощь, если только за вас сделать (схему базы и 2 запроса)
18 янв 14, 17:03    [15433753]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
ultima
Member

Откуда: СПб
Сообщений: 121
ultima,
https://www.sql.ru/docs/mssql/tsql_ref/
18 янв 14, 17:03    [15433755]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
Алексей Смирнов
Member

Откуда: г. Челябинск
Сообщений: 697
xxSKMxx,

"Выведите все о зале где находится наибольшее количество картин".
Я идею запроса подал, но не проверял. Над ошибками поработаете сами:
SELECT [Room].[ID], [Room].[Название] AS [Name], [Room].[Координаты] AS [Coord], [Room].[Площадь] AS [Area] FROM [Залы] AS [Room] INNER JOIN 
(SELECT [R].[ID_Зала] AS [RoomID], Count([R].[ID_Картины]) AS [CountPict] FROM [Расположение] AS [R] GROUP BY [R].[ID_Зала]) AS [RM]
ON [Room].[ID]=[RM].[RoomID]
GROUP BY [Room].[ID], [Room].[Название], [Room].[Координаты], [Room].[Площадь]
HAVING Max([RM].[CountPict])=[RM].[CountPict];
18 янв 14, 17:08    [15433764]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
Алексей Смирнов
Member

Откуда: г. Челябинск
Сообщений: 697
"Выведите название залов в которых демонстрируются картины только одного автора ".

SELECT [Room].[Название] AS [Name] FROM [Залы] AS [Room] INNER JOIN 
(SELECT [R].[ID_Зала] AS [RoomID], Count([R].[ID_Автора]) AS [CountAuthors] FROM [Расположение] AS [R] GROUP BY [R].[ID_Зала]) AS [Place]
ON [Room].[ID]=[Place].[RoomID]
WHERE [Place].[CountAuthors]=1;
18 янв 14, 17:15    [15433786]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
xxSKMxx
Member

Откуда:
Сообщений: 3
Алексей Смирнов,

Спасибо буду разбираться.
18 янв 14, 17:27    [15433828]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
Алексей Смирнов
Member

Откуда: г. Челябинск
Сообщений: 697
xxSKMxx,

Создай таблицы в Microsoft Access,заполни любые данные, на них и проверишь запросы.
18 янв 14, 17:52    [15433898]     Ответить | Цитировать Сообщить модератору
 Re: SQL запрос  [new]
AlexandrPlus
Member

Откуда:
Сообщений: 7887
ultima
ultima,
https://www.sql.ru/docs/mssql/tsql_ref/


"Краткий справочник" - очень "полезный" совет. 8-/

надо же что-то типа "для детей" Иллюстрированный самоучитель по SQL для начинающих
PS И препод наверно вместо лекций зачитывал краткий справочник.
PS Мне в ВУЗ-е такой "лектор" по курсу "Основы UNIX-систем" попадался: документацию зачитывал.
И "финишный" зачет с оценкой - те, кто уже не работал с одной из ОС, как идиоты смотрели на простые задания. И за всю группу всё решили три человека, уже работающие с одной из ОС, но им уже такой
курс был не нужен.
19 янв 14, 13:23    [15436246]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить