如何在 PostgreSQL 中模拟 MySQL 的 ORDER BY FIELD()?


以下是模拟 MySQL 的 ORDER BY FIELD() 在 PostgreSQL 中的过程。

我们使用了在线编译器来运行 PostgreSQL。

PostgreSQL Example

现在让我们看一下我们上面做了什么来获取输出。

首先,我们创建了一个表。

create table PostgreOrderIdDemo (
   countryName varchar(20)
);

使用 INSERT 命令插入记录。

insert into PostgreOrderIdDemo values('IND');
insert into PostgreOrderIdDemo values('US');
insert into PostgreOrderIdDemo values('UK');

以下是 PostgreSQL 中的语法。

SELECT * FROM yourTableName
ORDER BY
CASE
WHEN columnName='IND' THEN 1
WHEN columnName='US' THEN 2
WHEN columnName='UK' THEN 3
ELSE 0
END,columnName;

示例

现在让我们使用上面的语法来获取输出。

SELECT * FROM PostgreOrderIdDemo
ORDER BY
CASE
WHEN countryName='IND' THEN 1
WHEN countryName='US' THEN 2
WHEN countryName='UK' THEN 3
ELSE 0
END,countryName;

输出

以下是输出。

PostgreSQL Output

更新时间:26-Jun-2020

325 次观看

提升你的 职业

完成课程即可获得认证

开始学习
广告