【发布时间】:2012-06-02 21:17:00
【问题描述】:
T-SQL 中有没有类似表变量的东西?
在 Sql Server 中它看起来像这样:
DECLARE @ProductTotals TABLE
(
ProductID int,
Revenue money
)
那么在程序中我可以:
INSERT INTO @ProductTotals (ProductID, Revenue)
SELECT ProductID, SUM(UnitPrice * Quantity)
FROM [Order Details]
GROUP BY ProductID
并像处理普通表格一样使用此变量。
【问题讨论】:
-
如果我记得你不能将变量声明为 TABLE,postgresql 中没有 TABLE 类型。
-
功能与临时表相同。只是文章声称 table 变量在 SQL Server 中表现最好。
-
@ClodoaldoNeto 在 SQL Server 中,此用例有两个选项:第一个是像在 Postgres 中一样使用临时表,第二个是使用表变量。各有优势,视情况而定。
标签: sql postgresql plpgsql table-variable