USP_SEARCHLIST_QUERY
Used to search for ad-hoc queries.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@NAME | nvarchar(255) | IN | Name |
@QUERYCATEGORYCODEID | uniqueidentifier | IN | Category |
@MAXROWS | smallint | IN | Input parameter indicating the maximum number of rows to return. |
Definition
Copy
CREATE procedure dbo.USP_SEARCHLIST_QUERY
(
@NAME nvarchar(255) = null,
@QUERYCATEGORYCODEID uniqueidentifier = null,
@MAXROWS smallint = 500
)
as
set nocount on;
set @NAME = dbo.UFN_SEARCHCRITERIA_GETLIKEPARAMETERVALUE(@NAME, 0, null);
select top(@MAXROWS)
ADHOCQUERY.ID as [ID],
ADHOCQUERY.NAME as [Name],
(select RECORDTYPE.NAME from dbo.RECORDTYPE where ID = QVC.RECORDTYPEID) as [Type],
(select DESCRIPTION from dbo.QUERYCATEGORYCODE where ID = dbo.ADHOCQUERY.QUERYCATEGORYCODEID) as [Category],
ADHOCQUERY.DATEADDED as [Date added],
ADHOCQUERY.DESCRIPTION as [Description],
ADDEDBY.USERNAME as [Added by user],
ADDEDBY.APPLICATIONNAME as [Added by application]
from dbo.ADHOCQUERY
inner join dbo.QUERYVIEWCATALOG as QVC on ADHOCQUERY.QUERYVIEWCATALOGID = QVC.ID
inner join dbo.CHANGEAGENT as ADDEDBY on ADDEDBY.ID = ADHOCQUERY.ADDEDBYID
inner join dbo.CHANGEAGENT as CHANGEDBY on CHANGEDBY.ID = ADHOCQUERY.CHANGEDBYID
where
((@NAME is null) or (ADHOCQUERY.NAME like @NAME)) and
((@QUERYCATEGORYCODEID is null) or (ADHOCQUERY.QUERYCATEGORYCODEID = @QUERYCATEGORYCODEID))
order by ADHOCQUERY.NAME asc
--Need optimizer hint so it knows to use the proper index
OPTION (OPTIMIZE FOR (@NAME = 'Sample query name',@QUERYCATEGORYCODEID=null));