Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 01.11.2016
Сообщений: 23
1

SQL Запросы. MS SQL. 3. Приложения, которые работают со всеми серверами БД

16.05.2017, 12:48. Показов 2283. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем доброго времени суток!

Есть задача: Приложения, которые работают со всеми серверами БД.


Есть отношения:

R3:
-NAME_APPLICATION
-NAME_DATABASE

R2:
-NAME_DATABASE
-NAME_SERVER



Вот что я примерно, пытаюсь делать. Не ругайте сильно. О том, что этот запрос неправильный я итак знаю

SELECT [NAME_APPLICATION] FROM
(SELECT [NAME_APPLICATION] FROM
[R2] JOIN [R3] ON [R2].[NAME_SERVER] = [R3].[NAME_DATABASE]
GROUP BY [NAME_APPLICATION]
HAVING COUNT([R2].[NAME_SERVER]) = COUNT([R2].[NAME_SERVER])
) AS T45
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.05.2017, 12:48
Ответы с готовыми решениями:

Не работают sql запросы
База данных «БАНК». Даны отношения, моделирующие работу банка и его филиалов. Клиент может...

Перевел базу на ms sql не работают запросы
Добрый вечер, перевел БД access на базу на ms sql в результате перестали работать запросы. Как...

SQL запросы, чем плоха конкатенация SQL запроса?
Опишу ситуацию, есть БД с несколькими таблицами, с которыми нужно совершать много разных операций...

Sql запросы [ms sql server 2008 r2]
Собсна, рубежный контроль, домашний, базу создал, таблицы связал, с запросами морока осталась....

3
1040 / 856 / 335
Регистрация: 08.12.2016
Сообщений: 3,283
16.05.2017, 14:02 2
Цитата Сообщение от Алексей Юдов Посмотреть сообщение
HAVING COUNT([R2].[NAME_SERVER]) = COUNT([R2].[NAME_SERVER])
если слева и справа стоит одно и тоже выражение, то это истина всегда. К чему тогда такой HAVING?

Цитата Сообщение от Алексей Юдов Посмотреть сообщение
SELECT [NAME_APPLICATION] FROM (...) AS T45
и зачем выбирать один атрибут, если в подзапросе выбирается тоже только один атрибут?
0
3546 / 2120 / 752
Регистрация: 02.06.2013
Сообщений: 5,144
16.05.2017, 14:08 3
Цитата Сообщение от Алексей Юдов Посмотреть сообщение
Приложения, которые работают со всеми серверами БД.
T-SQL
1
2
3
4
5
6
7
8
9
select
 R3.NAME_APPLICATION
from
 R3 join
 R2 on R2.NAME_DATABASE = R3.NAME_DATABASE
group by
 R3.NAME_APPLICATION
having
 count(distinct R2.NAME_SERVER) = (select count(distinct NAME_SERVER) from R2);
0
1040 / 856 / 335
Регистрация: 08.12.2016
Сообщений: 3,283
16.05.2017, 14:11 4
как можно подсчитать "все сервера"? Естественно только из R2:
SQL
1
SELECT COUNT(DISTINCT NAME_SERVER) FROM R2
количество серверов, с которыми работает приложение подсчитали почти правильно, не считая что таблицы связали не по полям связи
SQL
1
2
3
4
5
6
SELECT 
  NAME_APPLICATION 
FROM 
  R2 JOIN R3 ON R2.NAME_DATABASE = R3.NAME_DATABASE
GROUP BY NAME_APPLICATION   
HAVING COUNT(DISTINCT R2.NAME_SERVER) = (SELECT COUNT(DISTINCT NAME_SERVER) FROM R2)
0
16.05.2017, 14:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.05.2017, 14:11
Помогаю со студенческими работами здесь

Перенос данных ms sql между серверами
доброе время суток... подскажите как можно реализовать: у меня есть 2 бд на разных серверах.. и...

Подключение Android-приложения к SQL Server (MS SQL)
Здравствуйте, не получается подключить андроид приложение к sql server 2008. Перерыл все в инете,...

Обработка данных через запросы SQL внутри приложения (виртуальная база данных)
Есть данные, которые с точки зрения удобства написания кода, проще всего обрабатывать запросами...

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


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru