您當前的位置:首頁 > 收藏

pgsql 實現 如mysql一樣的子查詢列可引用之前的計算列?

作者:由 知乎使用者 發表于 收藏時間:2022-04-16

pgsql 實現 如mysql一樣的子查詢列可引用之前的計算列?不剪髮的Tony老師2022-04-16 21:02:38

MySQL的寫法其他資料庫不支援,建議使用標準SQL中的遞迴查詢(WITH)實現:

WITH

t1

AS

select

1

n0

),

t2

AS

SELECT

n0

*

3

AS

n1

FROM

t1

SELECT

n1

n1

*

2

FROM

t2

上面的t1相當於臨時表,t2是基於t1的臨時表,這種方法定義的臨時表可以引用前面的臨時表。

這種寫法至少MySQL、PostgreSQL、SQL Server以及SQLite完全一致,Oracle只需要加上 from dual,本質上也是一樣的。

標簽: 臨時  MySQL  SQL  T1  寫法