Использование переменных встроенного SQL (MSSQL) - PullRequest
1 голос
/ 06 ноября 2019

Можно сделать что-то вроде этого ... MSSQL?

, где переменная @myText равна строке 'id = 5'

SELECT * FROM someTable WHERE ( @myText )

Ответы [ 2 ]

0 голосов
/ 06 ноября 2019

Спасибо, ребята. С твоей помощью привел меня к использованию временных таблиц вот так ....

DECLARE @companies TABLE (comp_code INT)    -- create temporary table
INSERT INTO @companies VALUES (5)           -- ( repeat this line for each additional company you wish to keep )

DELETE FROM tableOne Where (Comp_Code NOT IN (select comp_code from @companies));
DELETE FROM tableTwo Where (Comp_Code NOT IN (select comp_code from @companies));
DELETE FROM tableThree Where (Comp_Code NOT IN (select comp_code from @companies));
-- etc etc
0 голосов
/ 06 ноября 2019

Вам необходимо использовать динамический SQL. В SQL Server это выглядит так:

declare @sql nvarchar(max);

set @sql  = 'SELECT * FROM someTable WHERE ([myText])';

set @SQL = replace(@sql, '[mytext]', @mytext);

exec sp_executesql @sql;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...