3
是否可以在PostgreSQL SELECT
語句中命名使用case
(「switch」)創建的輸出列?從documentation看來,這是不可能的。我想做些什麼的一個例子用法是:命名在PostgreSQL中使用大小寫創建的輸出列
SELECT CASE (column) WHEN 1 THEN 'One' END AS 'TheColumn' FROM TABLE ;
是否可以在PostgreSQL SELECT
語句中命名使用case
(「switch」)創建的輸出列?從documentation看來,這是不可能的。我想做些什麼的一個例子用法是:命名在PostgreSQL中使用大小寫創建的輸出列
SELECT CASE (column) WHEN 1 THEN 'One' END AS 'TheColumn' FROM TABLE ;
這對我的作品(PG-9.1)
CREATE TABLE one
(one INTEGER
);
INSERT INTO one(one) values (0), (1), (NULL);
SELECT case one
when 1 then 'one'
when 0 then 'zero'
else 'other'
end AS the_one
FROM one;
因此,單引號(您用於引用別名列名)應該是雙引號(或缺席)。
結果:
CREATE TABLE
INSERT 0 3
UPDATE 3
the_one
---------
one
zero
other
(3 rows)
感謝。您的示例使用不帶引號或雙引號也適用於PostgreSQL 8.4.12。 – SabreWolfy
這只是引用。我傾向於避免MixedCaseIdentifiers,從而避免引用。規則:單引號:=字符串文字;雙引號:=標識符。 – wildplasser