Sql server 从存储过程中的临时表返回有序集
在存储过程中,我试图以特定顺序从临时表返回数据集,但当我在select*from TENTRABLE上使用order By子句时,无论我按哪个列进行排序,都会得到一个无效列名错误 代码在查询分析器窗口中工作,但在存储过程中不工作,但存储过程将保存而不抛出错误 为什么会这样?我该如何应对 代码如下:Sql server 从存储过程中的临时表返回有序集,sql-server,stored-procedures,sql-server-2012,Sql Server,Stored Procedures,Sql Server 2012,在存储过程中,我试图以特定顺序从临时表返回数据集,但当我在select*from TENTRABLE上使用order By子句时,无论我按哪个列进行排序,都会得到一个无效列名错误 代码在查询分析器窗口中工作,但在存储过程中不工作,但存储过程将保存而不抛出错误 为什么会这样?我该如何应对 代码如下: SELECT c.CaseID, Person.PersonID, Person.LastName, Person.FirstName, Person.MiddleName I
SELECT
c.CaseID,
Person.PersonID,
Person.LastName, Person.FirstName, Person.MiddleName
INTO
#People
FROM
[Case] c
INNER JOIN
Person ON c.PersonID = Person.PersonID
WHERE
c.CaseID = @caseID
ORDER BY
c.CaseID
SELECT *
FROM #People
ORDER BY CaseID
-您在select语句中提到了列名-
CREATE TABLE #People (CaseID int identity(1,1) not null,
PersonID int,LastName varchar(50),FirstName varchar(50),MiddleName varchar(50))
INSERT INTO #People
VALUES(1,'P','RAJA','')
INSERT INTO #People
VALUES(2,'S','Kannan','')
INSERT INTO #People
VALUES(3,'A','Ravi','Kumar')
INSERT INTO #People
VALUES(4,'D','Murugan','')
INSERT INTO #People
VALUES(5,'G','Abhi','')
INSERT INTO #People
VALUES(6,'R','Nayak','')
SELECT CaseID,PersonID,LastName,FirstName,MiddleName
FROM #People
ORDER BY CaseID
DROP TABLE #People
我不能复制你的问题,我想我不能。创建一个存储过程,将信息\u SCHEMA.TABLES查询到一个临时表中,并以带有order by子句的select从该临时表结束。如果您仍然遇到问题,请将整个存储过程添加到您的问题中。我无法使用信息_SCHEMA.TABLES重现它。源表上的索引会导致问题吗?我不这么认为。您能否制作一个不使用信息模式的完整复制案例?我的意思是,为表和存储过程创建脚本,在表中插入一些内容,这说明了问题所在?我周末要出去,但我会在周一试一试。谢谢!:哇,周末早!只是星期三!