Postgre では、なぜ
select abc from (select 1) as abc
生成:
(1)
と
select * from (select 1) as abc
生成:
1
それは私には本当に奇妙です。MySQL、Oracleなどの場合はそうですか? 私は自分の状態がなぜ失敗したのかを理解するのに何時間も費やしました...
Postgre では、なぜ
select abc from (select 1) as abc
生成:
(1)
と
select * from (select 1) as abc
生成:
1
それは私には本当に奇妙です。MySQL、Oracleなどの場合はそうですか? 私は自分の状態がなぜ失敗したのかを理解するのに何時間も費やしました...
クエリによって返される行の型は異なります。最初の行はROW(INT)
、2 番目の行は ですINT
。
MySQL
他の人はこの機能を欠いています。
ROW
最初のクエリでは、全体を 1 つの列として選択しています。このクエリ
SELECT abc FROM (SELECT 1, 2) abc
これも(1, 2)
単一の列であり、型がありROW
ます。
値を選択するにはINT
、次を使用します。
SELECT abc.col
FROM (
SELECT 1 AS col
) abc