如何在 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 次觀看

提升你的 職業

完成課程即可獲得認證

開始學習
廣告
© . All rights reserved.