J'essaie de faire une instruction select et d'utiliser l'une des variables renvoyées pour une autre instruction select qui sera renvoyée.Renvoi des variables de la recherche à utiliser dans l'instruction select
Les recherches de requête en fonction de la field_id = 413.
j'ai besoin 6 retourné afin qu'il puisse être utilisé dans une requête pour obtenir tous les 6 des lignes qui ont cette item_id.
Voici ce que j'ai:
DECLARE @Results TABLE(result sysname);
INSERT @Results(result);
DECLARE @SQL4 NVARCHAR(MAX) = 'Select DISTINCT ITEM_ID, ATRR_VAL from [dbo].[CONTRACT_ATTR] WHERE [ATTR_VAL] LIKE ''%@VALUE%'' AND FIELD_ID = 413 ORDER BY [ATTR_VAL]';
SET @SQL4 = replace(@SQL4, '@VALUE', '123456');
EXEC SP_executesql @SQL4;
SELECT * FR0M @Results
Je reçois plusieurs erreurs même si cela tente de suivre un tutoriel en ligne. Qu'est-ce que je fais mal et comment puis-je le réparer?
EDIT: Je me rapproche:
declare @myTable table
(
ITEM_ID nvarchar(256),
ATTR_VAL nvarchar(256)
)
insert into @myTable
exec (N'Select ITEM_ID, ATTR_VAL from [dbo].[CONTRACT_ATTR] WHERE [ATTR_VAL] LIKE ''%123%'' AND FIELD_ID = 413 ORDER BY [ATTR_VAL]') --dynamic query
select * from @myTable
La déclaration 'de INSERT' est incomplète. Quelles données essayez-vous d'insérer dans la variable de table? –
@GiorgosBetsos J'essaie d'insérer (ITEM_ID, ATRR_VAL). –
Vous ne pouvez pas faire cela. La table '@ Results' n'a qu'une seule colonne. Et BTW pourquoi utiliser 'sysname' au lieu de' nvarchar'? –