小编Gaj*_*mar的帖子

Count(*) with order by 不在 PostgreSQL 上工作,而在 Oracle 上工作

下面是在 Oracle 上运行但在 PostgreSQL 上不起作用的 Sql 查询。

select count(*) from users where id>1 order by username;
Run Code Online (Sandbox Code Playgroud)

我知道 order by 在此查询中没有任何意义,但仍然是它在 Oracle 上工作的原因。以下是 PostgreSQL 上的错误

ERROR: column "users.username" must appear in the GROUP BY clause or be used in an aggregate function
Position: 48
Run Code Online (Sandbox Code Playgroud)

SQL状态:42803

PostgreSQL 版本 9.6.3

sql oracle postgresql

5
推荐指数
1
解决办法
2897
查看次数

PostgreSQL 上的同义词支持

如何像在 Oracle 中一样在 PostgreSQL 上创建和使用同义词。我是否需要创建一些数据库链接或其他任何东西。我找不到关于这个主题的任何好的官方文档。

编辑 1

实际上到目前为止,我有一个应用程序,它有两个独立的模块,连接两个不同的 oracle 数据库;一个模块需要访问其他的表,因此我们在 oracle 中通过 db 链接使用同义词。现在我们正在将应用程序迁移到 postgresql,所以我们需要同义词。

编辑 2 当我说两个不同的 oracle 数据库时,这意味着它可以是两个不同的 oracle 实例或同一数据库的两个模式,它可以在应用程序中配置,并且应用程序必须支持这两种模式。

PostgreSQL 版本:9.6.3

sql postgresql

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

postgresql ×2

sql ×2

oracle ×1