您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關利用PostgreSQL 怎么給查詢列表增加序號,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
利用 ROW_NUMBER() over( ) 給查詢序列增加排序字段
SELECT ROW_NUMBER() over(ORDER bY biztypename DESC ) AS num,biztypename FROM (SELECT DISTINCT biztypename FROM bizmaptype) t;
效果如下:
補充:PostgreSql 使用自定義序列(Sequence)向表插入數據 id 自增長
按照以往Oracle建表的流程,我們來新建表,并且向表中導入數據。
CREATE TABLE book( id INTEGER PRIMARY KEY , name CHARACTER VARYING(50), price DOUBLE PRECISION, author CHARACTER VARYING(20) );
PRIMARY KEY 將id設置為主鍵;
數據類型
類型名稱 別名 描述
integer int,int4 有正負之分的4字節整數
character varying [ (n) ] varchar [ (n) ]
可變長度的字符串
double precision float8 雙精度浮點數(8字節)
更多類型請參考文檔:https://www.postgresql.org/docs/9.3/static/datatype.html
CREATE SEQUENCE book_id_seq START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE CACHE 1;
參數 描述
START WITH 設置起始值,允許序列從任何地方開始
INCREMENT BY 設置增量,指定在哪個值得基礎上創建新值,正值將產生遞增序列,負值將產生遞減序列;默認值為1。
NO MINVALUE 設置序列可以生成的最小值,如果未指定NO MINVALUE,對于升序和降序序列,默認值分別為1和。
NO MAXVALUE 設置序列可以生成的最大值,如果未指定此子句,將使用默認值,對于升序和降序序列,默認值為和-1。
CACHE 設置高速緩存,要分配多少序列號并將其存貯在內存中方便更快的訪問,最小值為1,默認值也是1。
ALTER TABLE book ALTER COLUMN id SET DEFAULT nextval('book_id_seq');
INSERT INTO public.book VALUES (nextval('book_id_seq'),'《本色》',30.5,'樂嘉'); INSERT INTO public.book VALUES (nextval('book_id_seq'),'《平凡世界》',90.5,'路遙'); INSERT INTO public.book VALUES (nextval('book_id_seq'),'《Java編程思想》',60.5,'詹姆斯·高斯林'); INSERT INTO public.book VALUES (nextval('book_id_seq'),'《Web高級編程》',50.5,'李三');
SELECT * FROM public.book;
查詢結果:
--查詢序列 (每查詢一次,序列就做了一次+1操作,即查詢下一次的value) SELECT nextval('book_id_seq'); --移除序列 DROP SEQUENCE 'book_id_seq';
以上就是利用PostgreSQL 怎么給查詢列表增加序號,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。