0
我想使用「SELECT table myTable As SELECT ...」在PostgreSQL中的select查詢中創建表。問題是它總是會創建一個表,即使查詢返回null。我知道我可以使用「SELECT Exist(從myTable中選擇1)」來確定表是否爲空。我的問題是,我可以將這兩個SQL命令組合到一個查詢中,檢查結果是否爲空,然後創建表。當查詢結果爲非空時,從查詢結果創建表
我想使用「SELECT table myTable As SELECT ...」在PostgreSQL中的select查詢中創建表。問題是它總是會創建一個表,即使查詢返回null。我知道我可以使用「SELECT Exist(從myTable中選擇1)」來確定表是否爲空。我的問題是,我可以將這兩個SQL命令組合到一個查詢中,檢查結果是否爲空,然後創建表。當查詢結果爲非空時,從查詢結果創建表
您可以嘗試使用下面的PL/SQL:
DO
$do$
BEGIN
IF EXISTS (SELECT 1 FROM some_table) THEN
SELECT your_table AS SELECT * FROM some_table
END IF;
END
$do$
請注意,您需要把上面IF
聲明成DO
塊,因爲我已經做了,或者到一個函數;如果直接從pgAdmin執行,它將不起作用。