Я хочу реализовать простой запрос SQL, который вернет отсортированный список. Проблема в том, что я получаю синтаксические ошибки при размещении предложения ORDER BY
везде, где я его помещаю.
SELECT
fr.FunctionRoleID, fr.FunctionRoleInternalName
FROM
users u
JOIN
UserRoles ur ON ur.UserID = u.UserID
JOIN
Roles_FunctionRoles rfr ON rfr.RoleID = ur.RoleID
JOIN
FunctionRoles fr ON fr.FunctionRoleID = rfr.FunctionRoleID
WHERE
u.UserName = @UserName
AND u.Active = 1
UNION
SELECT
fr.FunctionRoleID, fr.FunctionRoleInternalName
FROM
Roles r
JOIN
Roles_FunctionRoles rfr ON rfr.RoleID = r.RoleID
JOIN
FunctionRoles fr ON fr.FunctionRoleID = rfr.FunctionRoleID
WHERE
r.RoleName = 'Authenticated Users'
AND @UserName IS NOT NULL
AND LEN(@UserName) > 0
Что я хочу вставить:
ORDER BY fr.DisplayName ASC
EDIT
Если я создаю подзапрос, используя
SELECT *
FROM
(
[my initial query]
)
ORDER BY
[COLUMN NAME] ASC
Я получаю следующее сообщение об ошибке:
Неверный синтаксис рядом с 'ORDER'. Ожидается «AS», «ID» или «QUOTED_id»