首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在简单的PostgreSQL脚本中使用变量?

如何在简单的PostgreSQL脚本中使用变量?
EN

Stack Overflow用户
提问于 2009-04-20 02:28:52
回答 9查看 317.5K关注 0票数 125

例如,在MS-SQL中,您可以打开一个查询窗口并运行以下命令:

代码语言:javascript
复制
DECLARE @List AS VARCHAR(8)

SELECT @List = 'foobar'

SELECT *
FROM   dbo.PubLists
WHERE  Name = @List

在PostgreSQL中如何做到这一点?这是可以做到的吗?

EN

回答 9

Stack Overflow用户

发布于 2011-08-09 08:09:00

完整答案位于official PostgreSQL documentation中。

您可以使用新的PG9.0匿名代码块功能(http://www.postgresql.org/docs/9.1/static/sql-do.html )

代码语言:javascript
复制
DO $$
DECLARE v_List TEXT;
BEGIN
  v_List := 'foobar' ;
  SELECT *
  FROM   dbo.PubLists
  WHERE  Name = v_List;
  -- ...
END $$;

您还可以获得最后一个insert id:

代码语言:javascript
复制
DO $$
DECLARE lastid bigint;
BEGIN
  INSERT INTO test (name) VALUES ('Test Name') 
  RETURNING id INTO lastid;

  SELECT * FROM test WHERE id = lastid;
END $$;
票数 152
EN

Stack Overflow用户

发布于 2016-03-31 14:04:02

代码语言:javascript
复制
DO $$
DECLARE  
   a integer := 10;  
   b integer := 20;  
   c integer;  
BEGIN  
   c := a + b;
    RAISE NOTICE'Value of c: %', c;
END $$;
票数 48
EN

Stack Overflow用户

发布于 2013-04-29 02:35:48

您可以使用:

代码语言:javascript
复制
\set list '''foobar'''
SELECT * FROM dbo.PubLists WHERE name = :list;

那个可以

票数 33
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/766657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档