我想將結果轉換select statement為字串:
SELECT count(*) from pg_largeobject
此查詢的結果將是一個整數,我想將其轉換為字串。
例如:結果是 12451 我希望它是“12451”,它的型別是 string 。
我嘗試了這些解決方案,但沒有奏效:
https://www.postgresql.org/docs/9.3/functions-formatting.html
1- to_char()
to_char(SELECT count(*) from pg_largeobject, '')
但它需要在第二個引數中使用我還不知道的值
2- cast(SELECT count(*) from pg_largeobject) 作為文本;它給了我:
查詢失敗:錯誤:“cast”處或附近的語法錯誤
uj5u.com熱心網友回復:
您應該能夠count(*)使用::text語法將文本轉換為文本:
postgres=# create extension lo;
CREATE EXTENSION
postgres=# SELECT count(*) from pg_largeobject;
count
-------
0
(1 row)
postgres=# SELECT pg_typeof(count(*)) from pg_largeobject;
pg_typeof
-----------
bigint
(1 row)
postgres=# SELECT pg_typeof(count(*)::text) from pg_largeobject;
pg_typeof
-----------
text
(1 row)
postgres=# select version();
version
----------------------------------------------------------------------------------------------------------
PostgreSQL 11.11 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44), 64-bit
(1 row)
uj5u.com熱心網友回復:
您可以使用
select count(*)::TEXT from pg_catalog.pg_am;
count
-------
7
uj5u.com熱心網友回復:
SELECT cast ( count(*) as VARCHAR(10)) AS varchar_expression from pg_largeobject
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/331683.html
標籤:PostgreSQL
上一篇:在資料中顯示缺失的周
下一篇:插入回傳“上次操作沒有產生結果”
