plpgsql

    3熱度

    1回答

    我有這兩個表(Encomenda和Informacaofaturacao),我試圖創建一個觸發器,在插入Encomenda之前在Informacaofaturacao上插入一個新行,並將新行的Informacaofaturacao的新ID放在Encomenda的新行上。 我在做什麼錯? 感謝 CREATE TABLE Encomenda ( EncomendaID SERIAL,

    0熱度

    1回答

    我需要返回一條消息(根據de函數內部的一些評估的不同消息),但是當我調用該函數時,它會返回此錯誤消息:「返回類型未知與列2中預期的類型字符不匹配」。 CREATE OR REPLACE FUNCTION myfunction()RETURNS TABLE( cod INTEGER, answ CHARACTER VARYING ) AS $BODY$ BEGIN RETURN QUERY

    0熱度

    2回答

    我已經在Postgres中獲得了PostGIS的PostGIS數據庫中的點數據,並且我想將幾個地理上不同區域中的點提取爲CSV文件,每個區域一個文件。 我已成立了一個area表面積的多邊形,而且面積冠軍,我想有效地通過該表圈,使用類似的PostGIS' st_intersects()選擇數據在每個CSV文件中去,並得到文件名用於區域表中標題的CSV文件。 我對做交叉碼和設置CSV輸出的細節感到滿意

    1熱度

    1回答

    措辭不佳的冠軍,但我想不出一個簡潔的方式來描述我的問題。 我有下面的表: year | month | basin_id | value 我需要的數值爲一年/月的所有basin_ids並從另一年/月的所有basin_ids的相應值中減去,並以這樣的方式存儲結果值,使得它們仍然與它們各自的basin_id相關聯。 這似乎是它應該是一個相當簡單的查詢/子查詢,我可以計算值只是細微的差別: SELE

    0熱度

    1回答

    我需要一個相當於SQL Server函數convert的Postgres函數。最後我寫一個函數 CREATE OR REPLACE FUNCTION convert (target VARCHAR(50),source ANYELEMENT,style INT) RETURNS ANYELEMENT AS $$ BEGIN CASE when style=0

    2熱度

    1回答

    我需要動態地構造和執行UPDATE語句。然後我需要測試是否有任何更新。我的代碼如下: DECLARE v_table_name text; v_column_name text; v_debug_flag boolean; v_upd_stmt text; BEGIN select nm_table_name, replace(nm_table_

    1熱度

    1回答

    我在postgres sql function中遇到了一個問題,當整數數組爲空時,我需要返回所有記錄。 現在我正在使用dynamic sql來實現它012yb檢查數組是否爲空,所以不要在查詢中concat in statement。 我想知道是否有另一種方式來實現它沒有dynamic sql? 例如使用動態SQL: CREATE OR REPLACE FUNCTION testme() RETUR

    -1熱度

    1回答

    我傳遞一個類型創建一個存儲過程,做一個循環的過程中,這樣我可以將每個信息類型 這是我喜歡的類型 create type leketo as(id integer, name text); 功能將行插入我喜歡的類型 CREATE OR REPLACE FUNCTION getLeketo() RETURNS SETOF leketo AS $BODY$ declare l lek

    0熱度

    2回答

    select to_date('20170202','YYYYMMDD'); 回報: 2017-02-02 但是當我做: select to_date('20172202','YYYYMMDD'); 輸出爲: 2018-10-04 月份時是錯的,爲什麼不返回一個錯誤如在甲骨文?

    0熱度

    1回答

    我在處理plpgsql和RECORD類型時遇到了問題。 有誰知道一種方法來簡單地測試返回的記錄類型,以知道它是否設置? 基本模式: 甲函數返回一個記錄,並在那裏它可以是未固化的(即,選擇到沒有記錄返回)或它被設置爲一個單個記錄。 create or replace function blah() returns RECORD as $$ declare rec RECORD; be