postgresql - Postgres 的新手。你能帮我做几个简单的陈述吗?

标签 postgresql syntax

我非常熟悉 MSSQL,但我今天需要处理一些 postgres 的东西。最终目标是返回表的新 ID 以供其他地方使用,但由于我不熟悉 postgress 的语法,所以我似乎遇到了一些麻烦。

问题 1:

在 MSSQL 中我会:

delcare @test_number int
select @test_number = 42
print @test_number

在 Postgres 中我正在尝试:

test_number integer;
test_number := 42
print test_number

但它不喜欢第一行:

ERROR:  syntax error at or near "test_number"
LINE 1: test_number integer;

如果我能解决这个问题,我想我已经解决了我的真正问题,那就是:

问题 2:

在 MSSQL 中我会:

declare @new_id int
insert into some_table (data1. data2)
select @new_id = @@identity
-- now use @new_id for w/e you want

在 Postgres 中我正在尝试:

new__id integer;
new_id := insert into some_table (data1, data2) returning id;
-- now use new_id for w/e you want

最佳答案

在 Google 上快速搜索得到以下答案。

How do you use variables in a simple PostgreSQL script?

看起来您基本上是在查询中声明了一个匿名内联 pgsql 函数。看起来它也是 Postgres 9 的新功能。

关于postgresql - Postgres 的新手。你能帮我做几个简单的陈述吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16550846/

相关文章:

postgresql - 错误 : cannot create a unique index without the column "date_time" (used in partitioning)

postgresql - 无法使用对等身份验证在没有密码的情况下运行 `mix ecto.migrate`

node.js - 使用 Sequelize 和 Postgres 发送 POST 请求后,为什么我的外键列返回两次?

postgresql - 从 Db 中读取字节作为字符串

C# 代码分析 - 表达式的结构

javascript - Emberjs 似乎是如何扩展 Javascript 语法的?

database - 使用 EXTRACT 获取单位时出现 PostgreSQL 错误

c - 带指针的 typedef 声明

c++ - C++ 中的默认传递引用语义

java - 如何在 String.Format 中转义 %?