У меня есть база данных SQL Server, из которой мне нужно выбрать оставшиеся строки из двух представлений.ВЫБРАТЬ оставшиеся строки для каждого параметра
Мысль за этим заключается в следующем: я храню игровые дивизии в одном столе, а кланы - в другом.
vwGetGameDivisions
получает все игры, которые могут быть подвергнуты делению.vwGetClanDivisions
получает все действующие игры, на которые распространяется клан.
В настоящее время, используя
SELECT dbo.vwGetGameDivisions.name, dbo.vwGetClanDivisions.clanName
FROM dbo.vwGetClanDivisions
RIGHT OUTER JOIN
dbo.vwGetGameDivisions
ON dbo.vwGetClanDivisions.gameName = dbo.vwGetGameDivisions.name
получает все 'подразделение', и 'кланы' приписанное к ним.
Я хочу, чтобы отобразить оставшиеся подразделения (остальное, что определенный род не зарегистрирован), так что я могу привязать его к dropDownList
для клана, чтобы увидеть, что они все еще могут подписаться.
Я до сих пор довольно Newbee на запросах SQL, и даже не знаю, как идти об этом ..
Я попытался WHERE (dbo.vwGetClanDivisions.clanName = NULL)
, но возвращает только подразделение, которые не имеют никакого клана вообще.
EDIT - структуры:
CREATE TABLE [dbo].[tblSiteClanGameDivision](
[id] [int] IDENTITY(1,1) NOT NULL,
[clanId] [int] NOT NULL,
[gameId] [int] NOT NULL,
[removed] [tinyint] NOT NULL,
[dateAdded] [datetime] NOT NULL,
CONSTRAINT [PK_tblSiteClanGameDivision] PRIMARY KEY CLUSTERED
CREATE TABLE [dbo].[tblSiteGame](
[id] [int] IDENTITY(1,1) NOT NULL,
[name] [nvarchar](200) NOT NULL,
[description] [nvarchar](700) NULL,
[thumbnailLocation] [nvarchar](100) NULL,
[genreId] [int] NOT NULL,
[isDivision] [tinyint] NOT NULL,
CONSTRAINT [PK__tblGame__3213E83F03317E3D] PRIMARY KEY CLUSTERED
CREATE VIEW [dbo].[vwGetClanDivisions]
AS
SELECT dbo.tblSiteClanDetail.clanId, dbo.tblSiteClanDetail.clanName, dbo.tblSiteGame.id AS gameId, dbo.tblSiteGame.name AS gameName,
dbo.tblSiteClanGameDivision.removed, dbo.tblSiteClanGameDivision.dateAdded
FROM dbo.tblSiteClanDetail
INNER JOIN dbo.tblSiteClanGameDivision ON dbo.tblSiteClanDetail.id = dbo.tblSiteClanGameDivision.clanId
INNER JOIN dbo.tblSiteGame ON dbo.tblSiteClanGameDivision.gameId = dbo.tblSiteGame.id
GO
CREATE VIEW [dbo].[vwGetGameDivisions]
AS
SELECT id, name, thumbnailLocation, isDivision
FROM dbo.tblSiteGame
WHERE (isDivision = 1)
GO
Вы можете использовать 'выбрать * из VW, где идентификатор не в (текущее) SELECT, QUERY' – Sachin
структуры таблицы поможет –
Моей плохой :) Добавлена структуры в настоящее время. – TheGeekZn