Click here to monitor SSC
SQLServerCentral is supported by Redgate
Log in  ::  Register  ::  Not logged in
Home       Members    Calendar    Who's On

Add to briefcase

Stored procedure in Where clause Expand / Collapse
Posted Wednesday, August 29, 2012 6:34 AM
SSC Veteran

SSC VeteranSSC VeteranSSC VeteranSSC VeteranSSC VeteranSSC VeteranSSC VeteranSSC Veteran

Group: General Forum Members
Last Login: Wednesday, November 25, 2015 1:10 PM
Points: 286, Visits: 864

below is the query to display the project_name where project_name matches the condition.

select project_name from Groups
where project_name like '%20%Catalog%'

below is the stored procedure using for search string.

create procedure dbo.STORED_PROC_NAME
@sstrg varchar(100)
set nocount on;

--declare @strg varchar(100) = 'Catalog',
set @sstrg = '%' + REPLACE( @sstrg, '*', '%') + '%'

SELECT project_name
FROM groups
WHERE project_name like @sstrg

i want to execute the same query with stored procedure

select project_name from Groups
where project_name like (EXEC STORED_PROC_NAME '%20%Catalog%')

Please help.
Post #1351566
Posted Wednesday, August 29, 2012 6:49 AM



Group: General Forum Members
Last Login: Today @ 8:30 AM
Points: 7,897, Visits: 16,816
The stored procedure returns the result set you want - why complicate it (and double the execution time)?

You may have simplified things a little to help - in which case, you could run the results of the stored procedure into a #temp table and join to it in your query:

CREATE TABLE #Projects (project_name VARCHAR(stringsize))

INSERT INTO #Projects (project_name)

SELECT g.project_name
FROM Groups g
INNER JOIN #Projects p
ON p.project_name = g.project_name

“Write the query the simplest way. If through testing it becomes clear that the performance is inadequate, consider alternative query forms.” - Gail Shaw

For fast, accurate and documented assistance in answering your questions, please read this article.
Understanding and using APPLY, (I) and (II) Paul White
Hidden RBAR: Triangular Joins / The "Numbers" or "Tally" Table: What it is and how it replaces a loop Jeff Moden
Exploring Recursive CTEs by Example Dwain Camps
Post #1351578
Posted Thursday, August 30, 2012 3:15 AM


Group: General Forum Members
Last Login: Thursday, February 4, 2016 3:50 AM
Points: 2,934, Visits: 5,459
CELKO (8/29/2012)
In the early days, we had to load parameters into registers in the hardware. Why are you still doing that with local variables?

Oh those old days,
They gone away.
But we sometimes do need this way,
To stop a proc to sniff the lot
So, query plan is what we thought

"The only true wisdom is in knowing you know nothing"
"O skol'ko nam otkrytiy chudnyh prevnosit microsofta duh!"
(So many miracle inventions provided by MS to us...)

How to post your question to get the best and quick help
Post #1352065
« Prev Topic | Next Topic »

Add to briefcase

Permissions Expand / Collapse