2014-02-20 5 views
0

Я пишу хранимую процедуру SQL Server, которая возвращает простое количество записей.Использование SQL-команд, хранящихся в таблице

Однако, как часть запроса, я хотел бы добавить некоторый SQL в предложение WHERE, которое будет получено из записи в другой таблице. например. И customer_id = '0747'

Есть ли способ, которым я могу это сделать?

+0

@ user..put вашего оператора выбора одной переменной типа VARCHAR, deaclare другую переменную и установить с ИНЕКЕ путем выбора из таблицы, а затем добавить их сделать одно заявление и finally execute –

+0

Не могли бы вы объяснить свой вопрос еще немного? Какую часть строки вы хотите добавить, будет из другой таблицы/столбца? – Incognito

+0

У вас есть *, чтобы сделать это по какой-либо причине (получить критерии из таблицы) или есть большая проблема, которую вы пытаетесь решить? –

ответ

2

Попробуйте это:

DECLARE @Query nvarchar(1000) = 'SELECT * FROM [TableName] WHERE [ColumnName] = Value ' 
DECLARE @WhereClause nvarchar(1000) 

SELECT @WhereClause = [Value] FROM [Table that stores queries] WHERE ID = [Unique Identifier of query] 

SET @Query = @Query + @WhereClause 

EXEC(@Query) 
+0

Вы забыли указать правильную часть задания '@ WhereClause' в кавычках. Но кроме этого: правильно. – alzaimar

+1

Я считаю, что цитаты не требуются, поскольку мы выбираем поле из таблицы и присваиваем его переменной :) –

+0

Это отлично работает благодаря Abhishek –

Смежные вопросы