是否可以重寫這段SQL代碼?如何從sql數據庫中選擇多個角色?
在這種情況下,用戶被分配到多個角色。我希望所有Arrangemang
ID
的用戶在一個列表中的不同角色。
我要重構這些行硬編碼的@rollx
...
(kk_aj_tbl_Arrangemang.KonstformID = @roll1) OR
如果這是可能的嗎?
以下是我現有的代碼...
SELECT kk_aj_tbl_Arrangemang.ArrID,
kk_aj_tbl_Arrangemang.Datum,
(SELECT TOP (1) kk_aj_tbl_content.Rubrik
FROM kk_aj_tbl_content
INNER JOIN kk_aj_tbl_arridtoContent ON kk_aj_tbl_content.Contentid = kk_aj_tbl_arridtoContent.contentid
WHERE (kk_aj_tbl_arridtoContent.arrid = kk_aj_tbl_Arrangemang.ArrID AND
kk_aj_tbl_arridtoContent.Version = 1
)
) AS Rubrik,
(SELECT TOP (1) kk_aj_tbl_content_1.Underrubrik
FROM kk_aj_tbl_content AS kk_aj_tbl_content_1
INNER JOIN kk_aj_tbl_arridtoContent AS kk_aj_tbl_arridtoContent_1 ON kk_aj_tbl_content_1.Contentid = kk_aj_tbl_arridtoContent_1.contentid
WHERE (kk_aj_tbl_arridtoContent_1.arrid = k_aj_tbl_Arrangemang.ArrID AND
kk_aj_tbl_arridtoContent_1.Version = 1
)
) AS UnderRubrik,
kk_aj_tbl_Arrangemang.Publicerad,
kk_aj_tbl_Arrangemang.LookedAt,
kk_aj_tbl_ArrangemangStatus.ArrangemangStatus,
kk_aj_tbl_Arrangemangtyp.arrangemangtyp,
kk_aj_tbl_Konstformtyp.konstform,
kk_aj_tbl_utovare.Organisation,
Users.Username
FROM kk_aj_tbl_Arrangemang
INNER JOIN kk_aj_tbl_utovare ON kk_aj_tbl_Arrangemang.UtovarID = kk_aj_tbl_utovare.UtovarID
INNER JOIN kk_aj_tbl_ArrangemangStatus ON kk_aj_tbl_Arrangemang.ArrangemangStatusID = kk_aj_tbl_ArrangemangStatus.ArrangemangStatusID
INNER JOIN kk_aj_tbl_Konstformtyp ON kk_aj_tbl_Arrangemang.KonstformID = kk_aj_tbl_Konstformtyp.KonstformID
INNER JOIN kk_aj_tbl_Arrangemangtyp ON kk_aj_tbl_Arrangemang.ArrangemangstypID = kk_aj_tbl_Arrangemangtyp.ArrangemangstypID
INNER JOIN Users ON kk_aj_tbl_Arrangemang.AdminuserID = Users.UserID
WHERE (kk_aj_tbl_ArrangemangStatus.ArrangemangStatusID = @arrStatusTyp)
AND (kk_aj_tbl_Arrangemang.VisningsPeriod = @visningsperiod)
AND ((kk_aj_tbl_Arrangemang.KonstformID = @roll1) OR
(kk_aj_tbl_Arrangemang.KonstformID = @roll2) OR
(kk_aj_tbl_Arrangemang.KonstformID = @roll3) OR
(kk_aj_tbl_Arrangemang.KonstformID = @roll4) OR
(kk_aj_tbl_Arrangemang.KonstformID = @roll5) OR
(kk_aj_tbl_Arrangemang.KonstformID = @roll6) OR
(kk_aj_tbl_Arrangemang.KonstformID = @roll7) OR
(kk_aj_tbl_Arrangemang.KonstformID = @roll8) OR
(kk_aj_tbl_Arrangemang.KonstformID = @roll9) OR
(kk_aj_tbl_Arrangemang.KonstformID = @roll10)
)
您正在使用什麼數據庫? –
我使用mssql。 – theonealf
你的問題被標記爲「sql-server」,你可以將其更改爲mysql嗎? –