T-Sql声明并设置

时间:2012-04-04 14:20:48

标签: sql-server tsql

这是我的陈述

为什么我会收到这些错误关键字'select'附近的语法不正确,关键字'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

感谢您的帮助

4 个答案:

答案 0 :(得分:16)

单程

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

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

答案 1 :(得分:3)

使用SELECT设置变量值的另一种语法如下:

SELECT @variable = column_name FROM some_table WHERE ...

所以对你的情况来说:

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

答案 2 :(得分:1)

你需要

(select ID_SOUS_CATGR_AGENT_CHIMQ FROM dbo.MAD_SOUS_CATGR_AGENT_CHIMQ where NM_SOUS_CATGR_AGENT_CHIMQ = 'plantes et ses dérivés')

答案 3 :(得分:0)

移动您的括号:

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