powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / SQL помогите с запросом
2 сообщений из 2, страница 1 из 1
SQL помогите с запросом
    #39824545
nc1318
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ДАНО:
ТАБЛИЦА СЧЕТОВ
CounterPartyID INT
PRIMARY KEY IDENTITY [Name] VARCHAR(255) IsActive BIT
1 ИВАНОВ 1
2 ПЕТРОВ 0
3 СИДОРОВ 1
CounterPartyID – ИДЕНТИФИКАТОР СЧЕТА
[Name] – НАЗВАНИЕ СЧЕТА
IsActive – ПРИЗНАК АКТИВНОСТИ

ТАБЛИЦА ПРОВОДОК
TransID INT TransDate DATE RcvID INT SndID INT AssetID INT Quantity NUMERIC(19, 8)
1 01.01.2012 1 2 1 100
2 02.01.2012 1 3 2 150
3 03.01.2012 3 1 1 300
4 04.01.2012 2 1 3 50
TransID – ИДЕНТИФИКАТОР ПРОВОДКИ
TransDate – ДАТА ПРОВЕДЕНИЯ ПРОВОДКИ
RcvID – ИДЕНТИФИКАТОР ПОЛУЧАТЕЛЯ
SndID – ИДЕНТИФИКАТОР ОТПРАВИТЕЛЯ
AssetID – ИДЕНТИФИКАТОР АКТИВА(РУБЛИ, ДОЛЛАРЫ, АКЦИИ ЛУКОЙЛА, АКЦИИ ГАЗПРОМА И Т.Д.)
Quantity – КОЛИЧЕСТВО ПЕРЕДАВАЕМОГО АКТИВА
НУЖНО: ОТОБРАТЬ АКТИВНЫЕ СЧЕТА ПО КОТОРЫМ ЕСТЬ ПРОВОДКИ КАК МИНИМУМ ПО ДВУМ РАЗНЫМ АКТИВАМ.

Отбираю активные счета:
SELECT A.CounterPartyID, A.Name, w.AssetID
FROM dbo.accounts A
JOIN dbo.wirings w ON A.CounterPartyID = w.RcvID
WHERE IsActive = 1
UNION ALL
SELECT A.CounterPartyID, A.Name, w.AssetID
FROM dbo.accounts A
JOIN dbo.wirings w ON A.CounterPartyID = w.SndID
WHERE IsActive = 1

А додуматься до того, как выбрать проводки по двум разным активам не могу.
Помогите
...
Рейтинг: 0 / 0
SQL помогите с запросом
    #39824558
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nc1318А додуматься до того, как выбрать проводки по двум разным активам не могу.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
select A.CounterPartyID, A.Name, count(*)
FROM (
    SELECT distinct A.CounterPartyID, A.Name, w.AssetID
    FROM dbo.accounts A
        JOIN dbo.wirings w ON A.CounterPartyID in (w.SndID, w.RcvID)
    WHERE A.IsActive = 1
) as A
group by A.CounterPartyID, A.Name
HAVING count(*) > 1
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / SQL помогите с запросом
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]