Preface

This document records commonly used SQL statements, mainly focused on queries.

Queries

Query View ID

  • Query by View Name
SELECT name AS 'View name',
       savedqueryid AS 'View Id', 
       returnedtypecode AS 'Owning entity',
       description as 'Description'
FROM   savedquery
WHERE  name = 'Enter view name';
  • Query All Views under a Specific View
SELECT 
    v.SavedQueryId AS 'View Id',
    v.Name AS 'View name',
    v.returnedtypecode AS 'Owning entity'
FROM 
    SavedQuery v
WHERE 
    returnedtypecode = 'account'

Query Report/Report ID

SELECT reportid,
       name,
       filename,
       description,
       owneridname,
       componentstatename,
       createdon,
       createdbyname
FROM   report;

Query which users are assigned to a security role

SELECT 
    systemuser.fullname AS UserFullName,
    systemuser.domainname AS DomainName,
    systemuser.systemuserid AS UserId,
    role.name AS RoleName
FROM 
    systemuserroles
INNER JOIN 
    systemuser ON systemuserroles.systemuserid = systemuser.systemuserid
INNER JOIN 
    role ON systemuserroles.roleid = role.roleid
WHERE 
    role.name = 'RoleName1'

Sample:

UserFullNameDomainNameUserIdRoleName
Zhangsanzhangsan@sample.comd04cbf6f-4c9d-321-be37-0117fa06c22dRoleName1
Lisilisi@sample.com41238369-4c9d-ee11-be36-0017fa078214RoleName1

List all security roles for a user

SELECT 
    su.fullname AS UserFullName,
    su.domainname AS DomainName,
    su.systemuserid AS UserId,
    STRING_AGG(r.name, ', ') AS RoleNames
FROM 
    systemuserroles sur
INNER JOIN 
    systemuser su ON sur.systemuserid = su.systemuserid
INNER JOIN 
    role r ON sur.roleid = r.roleid
GROUP BY 
    su.fullname,
    su.domainname,
    su.systemuserid
ORDER BY 
    su.fullname

Sample:

UserFullNameDomainNameUserIdRoleName
Zhangsanzhangsan@sample.comd04cbf6f-4c9d-321-be37-0117fa06c22dRoleName1,RoleName2
Lisilisi@sample.com41238369-4c9d-ee11-be36-0017fa078214RoleName1,RoleName2,RoleName3