plpgsql相关内容
假设我们具有此功能: create or replace function foo(a integer) returns table (b integer, c integer) language plpgsql as $$ begin raise notice 'foo()'; return query select a*2, a*4; return query s
..
我正在尝试创建一个简单的函数,但似乎无法将参数传递给date函数. 功能如下: CREATE OR REPLACE FUNCTION test(source int,days text) RETURNS integer AS $totals$ declare totals integer; BEGIN select count(id) into to
..
例如,我有一个存储过程,用于从csv文件导入数据并将读取的数据写入SQL表. 我有一个定义如下的表: CREATE TABLE person (id int, name text, age int, married boolean); 首先,我检查记录是否已经存在,如果存在,我会更新,如果不存在,请插入. 每个记录字段可能具有不同的类型,因此SQL命令的结果将分配给一个标量变量列表:
..
在这种情况下,format()的用法通常可以互换吗? exec_str := format('UPDATE ' || TG_ARGV[0] || ' SET username = current_user, time = current_timestamp::timestamp(0);'
..
我有下表: id description additional_info 123 XYZ XYD 还有一个数组为: [{It is known to be XYZ},{It is know to be none},{It is know to be XYD}] 我需要以一种方式映射两个内容,即对于表的每个记录,我都可以定义成功匹配的次数. 上面示例
..
即使我清空所有的DECLARE块和BEGIN-END块并尝试返回一个字符串,似乎也无法使该函数创建.有人可以帮我解决我在这里做错的事吗? 尝试在pgAdminIII(Ubuntu)中执行此操作: CREATE OR REPLACE FUNCTION split_country() RETURNS text as $$ DECLARE titlecsv text; arCou
..
尝试执行触发器时遇到麻烦.假设我们有2个表,我想将数据从表A 复制到表B ,但是每个表都有一个唯一约束. create table test1 ( test_name varchar); create unique index test1_uc on test1 USING btree (test_name); create table test2 ( test_name2 varch
..
所以,我认为这应该很简单,但是文档使它看起来有些复杂.我已经在PostgreSQL(目前为8.1)中编写了一个SQL函数,该函数对某些字符串输入进行了一些清理.对于它的价值,该字符串是LDAP专有名称,我希望逗号后始终没有空格-函数是clean_dn(),该函数返回已清理的DN.我想做同样的事情,以强制所有输入到另外两列的输入都变为小写字母,以此类推-一旦我弄清楚了这部分,这应该很容易. 无
..
我正在寻找在PostgreSQL中将一组列从一个表动态插入到另一个表中的方法.我想我想做的是在列标题的“检查表"(表1中的那些列-存储表)中读取的,如果它们在导出表中存在(表2),则将它们插入所有但是,表2会立即在表中的列中进行更改.一旦导入,表2就会被删除,并导入可能要使用不同列结构导入的新数据.所以我需要根据列名导入它. 例如 表1.-存储表 ID NAME
..
好吧,我正在尝试创建一个简单的过程,检查是否有这样的登录用户,如果没有,请在用户表中添加新行.但是遇到了意外问题. CREATE OR REPLACE FUNCTION register_user(character varying, character varying, character varying,character varying,character varying) RET
..
我遵循了但是我不能将其应用于我的案子.当我这样做时: update weighed_directed_edge set endpoint= trunc(1000 * random()+ 1) from generate_series(1,10) group by 1 where startpoint= from_point; 更新它抱怨的endpointId: ERROR: s
..
更新 如何从订购的表中选择行 第一个元素与某行匹配 第二个元素与下一行匹配 第三个元素在第二行之后的下一行 第四元素位于第三行之后的下一行 以此类推,直到数组中的值结束? 逻辑 假设我将这些行作为查询的结果(表token容纳id和word,表positioning容纳id和position): id | word | textblockid |sentenc
..
我正在研究postgres应用程序.目前,我不确定如何最好地管理应用程序常量参数.例如,我想定义一个阈值变量,该变量将在多个函数中使用. 一个想法是制作一个表"config",并在每次需要它们时查询该变量.对于快捷方式,将sql查询包装到其他函数中,即:t:= get_Config('Threshold'); 但是实际上我对此并不很幸运.处理自定义应用程序配置参数的最佳方法是什么?它们
..
我在PostgreSQL 8.4中创建此触发器时遇到问题. CREATE OR REPLACE FUNCTION tbi_Usuarios() RETURNS TRIGGER AS $tbi_Usuarios$ BEGIN IF trim(both ' ' from NEW.Nombre_usuario) = '' OR NEW.Nombre_usuario IS N
..
multirow子选择将在where子句中的in运算符的右侧使用: create table t (a integer); insert into t (a) values (1), (9); drop function if exists f(); create function f() returns void as $$ begin execute ' select a
..
我有一个表,其中有3个不同的分区,在point_of_sale列上进行了拆分.我已经构造了一个视图(massive_table)来聚集来自这些分区的数据,如下所示: CREATE VIEW massive_table as SELECT * FROM massive_table_UK UNION ALL SELECT * FROM massive_table_US UNION ALL SEL
..
我正在尝试使用PostgreSQL数据库维护Php应用程序.在某一时刻,调用了一个存储过程,比如说function_x,并且在function_x内部,调用了function_y. function_y传递了一个名为parameter_1的变量,而parameter_1的定义为: parameter_1 numeric[][3] := {}; 我正在尝试直接在命令行(或pgadmin)上
..
当我在PG 8.4中运行此SQL语句时,我收到此错误消息(如标题所示): psql -h localhost -U postgres -d mydb -c "CREATE TRUSTED PROCEDURAL LANGUAGE 'plpgsql' HANDLER plpgsql_call_handler VALIDATOR plpgsql_validator" 是什么原因造成的(它曾经与
..
我试图弄清楚如何使用表名称和源列名称作为参数编写INSERT INTO查询. 对于初学者来说,我只是想对源表名称进行参数化.我写了以下查询.现在,我直接声明并分配变量tablename的值,但是在实际示例中,它将来自其他某些来源/列表.目标表只有一列. CREATE OR REPLACE FUNCTION foo() RETURNS void AS $$ DECLARE tab
..
我的问题是如何在PL/pgSQL中构建一个函数来做到这一点: 我有很多这样的线串. Linestring((3.584731 60.739211,3.590472 60.738030,3.592740 60.736220)) 我需要将每个Linestring拆分为一个Substring,然后再次将其拆分为2个坐标. 3.584731 60.739211 x1
..