Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

T-Sql Declare and set

This is my statement

Why I get those errors Incorrect syntax near the keyword 'select', Incorrect syntax near the keyword 'FROM'. ???

BEGIN
Declare @idToutesPlantesDérivés  int 
DECLARE @idPlantesDérivés  int 

SET @idPlantesDérivés = select(ID_CHIMQ FROM dbo.SOUS_CATGR where Name = 'plantes et ses dérivés')

SET @idToutesPlantesDérivés = select(ID_CHIMQ  FROM dbo.SOUS_CATGR where Name = 'toutes les autres plantes et dérivés')

   select @idToutesPlantesDérivés
END

Thanks for your help

like image 232
FrankSharp Avatar asked Apr 04 '12 14:04

FrankSharp


2 Answers

One way

BEGIN
Declare @idToutesPlantesDérivés  int 
DECLARE @idPlantesDérivés  int 

SET @idPlantesDérivés = ( SELECT ID_CHIMQ 
FROM dbo.SOUS_CATGR
where Name = 'plantes et ses dérivés')

SET @idToutesPlantesDérivés = ( SELECT ID_CHIMQ 
  FROM dbo.SOUS_CATGR
where Name = 'toutes les autres plantes et dérivés')

   select @idToutesPlantesDérivés
END

or

BEGIN
Declare @idToutesPlantesDérivés  int 
DECLARE @idPlantesDérivés  int 

SELECT @idPlantesDérivés = ID_CHIMQ  
FROM dbo.SOUS_CATGR
where Name = 'plantes et ses dérivés'

SELECT @idToutesPlantesDérivés = ID_CHIMQ 
FROM dbo.SOUS_CATGR
where Name = 'toutes les autres plantes et dérivés'

   select @idToutesPlantesDérivés
END
like image 196
SQLMenace Avatar answered Sep 23 '22 20:09

SQLMenace


Another syntax for setting a value for a variable with SELECT looks like:

SELECT @variable = column_name FROM some_table WHERE ...

So for your case:

BEGIN
Declare @idToutesPlantesDérivés  int 
DECLARE @idPlantesDérivés  int 

select @idPlantesDérivés = ID_CHIMQ FROM dbo.SOUS_CATGR where Name = 'plantes et ses dérivés'

select @idToutesPlantesDérivés = ID_CHIMQ  FROM dbo.SOUS_CATGR where Name = 'toutes les autres plantes et dérivés'

   select @idToutesPlantesDérivés
END
like image 39
Paul Sasik Avatar answered Sep 21 '22 20:09

Paul Sasik