首页 >数据库 >mysql教程 >如何在 PostgreSQL 查询中声明和使用变量?

如何在 PostgreSQL 查询中声明和使用变量?

Mary-Kate Olsen
Mary-Kate Olsen原创
2025-01-21 10:13:08417浏览

How Can I Declare and Use Variables in PostgreSQL Queries?

在PostgreSQL查询中声明和使用变量

本文介绍如何在PostgreSQL 8.3及以上版本查询中声明变量。在MS SQL Server中,变量声明语法很简单:

<code class="language-sql">DECLARE @myvar INT;
SET @myvar = 5;

SELECT * FROM somewhere WHERE something = @myvar;</code>

然而,这种方法在PostgreSQL中会报错,尽管文档中建议使用简单的“name type;”声明。以下代码会引发语法错误:

<code class="language-sql">myvar INTEGER;</code>

使用WITH子句的解决方案

在PostgreSQL中声明变量的替代方法是使用WITH子句。虽然不如MS SQL Server中的方法简洁,但它实现了相同的功能。需要注意的是,对于简单的场景,使用WITH子句可能会显得过于冗余:

<code class="language-sql">WITH myconstants (var1, var2) as (
   values (5, 'foo')
)
SELECT *
FROM somewhere, myconstants
WHERE something = var1
   OR something_else = var2;</code>

以上是如何在 PostgreSQL 查询中声明和使用变量?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn