Как получить все ссылочные ключи одного ряда - PullRequest
0 голосов
/ 07 октября 2019

У меня есть таблица Clan с тегом и датой создания, а также таблица ClanMember со ссылкой на Clan.tag (ClanMember.clanTag) и Clan.created (ClanMember.clanCreated).

Я хочу получить всех членов самого последнего созданного клана. Все, что я до сих пор пробовал, привело к тому, что запрос вернул всех членов клана всех кланов

2 таблицы :

enter image description here

    CREATE TABLE Clan ([tag] varchar(255) NOT NULL, created datetime, PRIMARY KEY ([tag], created));
CREATE TABLE ClanMember ([tag] varchar(255) NOT NULL, clanCreated datetime NOT NULL, clanTag varchar(255) NOT NULL, PRIMARY KEY ([tag], clanCreated));
ALTER TABLE ClanMember ADD CONSTRAINT FKClanMember466676 FOREIGN KEY (clanTag, clanCreated) REFERENCES Clan ([tag], created);

INSERT INTO Clan (tag, created) VALUES ('#001','2019-10-17 12:00:00.000')
INSERT INTO Clan (tag, created) VALUES ('#001','2019-10-17 17:00:00.000')

INSERT INTO ClanMember (tag, clanCreated, clanTag) VALUES ('#cm01','2019-10-17 12:00:00.000','#001')
INSERT INTO ClanMember (tag, clanCreated, clanTag) VALUES ('#cm02','2019-10-17 12:00:00.000','#001')
INSERT INTO ClanMember (tag, clanCreated, clanTag) VALUES ('#cm03','2019-10-17 12:00:00.000','#001')

INSERT INTO ClanMember (tag, clanCreated, clanTag) VALUES ('#cm01','2019-10-17 17:00:00.000','#001')
INSERT INTO ClanMember (tag, clanCreated, clanTag) VALUES ('#cm02','2019-10-17 17:00:00.000','#001')
INSERT INTO ClanMember (tag, clanCreated, clanTag) VALUES ('#cm03','2019-10-17 17:00:00.000','#001')

Желаемый результат: новый клан с тэгом: '# 001' и все его члены будут возвращены

1 Ответ

0 голосов
/ 07 октября 2019

Это то, что вы хотите?

select cm.*
from clanmember cm
where cm.clantag = (select top (1) c.tag
                    from clans c
                    order by c.created desc
                   );

Здесь - это дБ <> скрипка, основанная на ваших данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...