主頁 > 知識(shí)庫 > sql腳本函數(shù)編寫postgresql數(shù)據(jù)庫實(shí)現(xiàn)解析

sql腳本函數(shù)編寫postgresql數(shù)據(jù)庫實(shí)現(xiàn)解析

熱門標(biāo)簽:Linux服務(wù)器 服務(wù)外包 網(wǎng)站排名優(yōu)化 地方門戶網(wǎng)站 百度競(jìng)價(jià)排名 呼叫中心市場(chǎng)需求 AI電銷 鐵路電話系統(tǒng)

這篇文章主要介紹了sql腳本函數(shù)編寫postgresql數(shù)據(jù)庫實(shí)現(xiàn)解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

postgresql創(chuàng)建Long自增函數(shù)

CREATE 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;-->

創(chuàng)建sql腳本postgresql

do language plpgsql
$$
begin
update grade set grade = 90 where sno = '20161003';
end
$$

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • PostgreSQL數(shù)據(jù)庫中窗口函數(shù)的語法與使用
  • PostgreSQL Node.js實(shí)現(xiàn)函數(shù)計(jì)算方法示例
  • PostgreSQL 正則表達(dá)式 常用函數(shù)的總結(jié)
  • 深入解讀PostgreSQL中的序列及其相關(guān)函數(shù)的用法
  • Postgresql自定義函數(shù)詳解

標(biāo)簽:崇左 仙桃 蘭州 銅川 黃山 湖南 湘潭 衡水

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《sql腳本函數(shù)編寫postgresql數(shù)據(jù)庫實(shí)現(xiàn)解析》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266