各位用户为了找寻关于sql脚本函数编写postgresql数据库实现解析的资料费劲了很多周折。这里教程网为您整理了关于sql脚本函数编写postgresql数据库实现解析的相关资料,仅供查阅,以下为您介绍关于sql脚本函数编写postgresql数据库实现解析的详细内容
这篇文章主要介绍了sql脚本函数编写postgresql数据库实现解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
postgresql创建Long自增函数
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21CREATE
SEQUENCE
global_id_sequence;
CREATE
OR
REPLACE
FUNCTION
seq_id(
OUT
result
bigint
)
AS
$$
DECLARE
our_epoch
bigint
:= 1314220021721;
seq_id
bigint
;
now_millis
bigint
;
-- the id of this DB shard, must be set for each
-- schema shard you have - you could pass this as a parameter too
shard_id
int
:= 1;
BEGIN
SELECT
nextval(
'global_id_sequence'
) % 1024
INTO
seq_id;
SELECT
FLOOR(EXTRACT(EPOCH
FROM
clock_timestamp()) * 1000)
INTO
now_millis;
result := (now_millis - our_epoch) << 23;
result := result | (shard_id << 10);
result := result | (seq_id);
END
;
$$ LANGUAGE PLPGSQL;
<!
--alter function seq_id(out bigint) owner to postgres;-->
创建sql脚本postgresql
? 1 2 3 4 5 6do language plpgsql
$$
begin
update
grade
set
grade = 90
where
sno =
'20161003'
;
end
$$
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
原文链接:https://www.cnblogs.com/ltspring/p/11508636.html