cod*_*iac 2 sql sql-server-2008
由于某种原因,我不断收到错误“‘DECLARE’一词附近的语法不正确”。我应该在哪里声明我的变量以免引发错误?我无法弄清楚这一点,因为我还没有发现有人使用“WITH AS”语句并尝试声明变量。
CREATE PROCEDURE qryKeysValues(@KeyValue varchar(5))
AS
BEGIN
WITH tbl1 AS
(SELECT * FROM FN_qryMethods())
DECLARE @SQL varchar(1500)
SET @SQL = 'SELECT ' + @KeyValue+ ' AS fldCode, tbl' +@KeyValue+ 'Key.fldID, tbl1.fldID
FROM tbl' + @KeyValue + 'Key', tbl1
EXEC(@SQL)
END;
Run Code Online (Sandbox Code Playgroud)
该With语句采用以下结构:
WITH CTE_Name
AS
(
Select column from table
)
Select column from CTE_Name
Run Code Online (Sandbox Code Playgroud)
你不能把Declare它放在你该放的地方。允许的值为SELECT、INSERT、UPDATE和(contrib @alex k)。DELETEMERGE
| 归档时间: |
|
| 查看次数: |
18989 次 |
| 最近记录: |