PostgreSQL

docker安装pgsql

docker run --name postgres-dev -e TZ=PRC -e POSTGRES_USER=root -e POSTGRES_DB=database -e POSTGRES_PASSWORD=Root123 -p 5433:5432 -v pgdata:/var/lib/postgresql/data -d postgres

创键表时需要注意主键di的问题 类型为bigserial

Name
smallserial:2 bytes,1 to 32767
serial:4 bytes,1t,o 2147483647
bigserial:8 bytes,1to 9223372036854775807

DROP TABLE IF EXISTS "public"."record";
CREATE TABLE "public"."record" (
  "id" bigserial,
  "create_time" timestamp(0),
  "update_time" timestamp(0),
  "test" varchar(255) COLLATE "pg_catalog"."default",
  "test_text" text COLLATE "pg_catalog"."default"
);
 
GRANT ALL PRIVILEGES ON all tables in schema public TO xxxx;
GRANT ALL ON ALL SEQUENCES in schema public TO xxxx;  

如果在history表有一个list字段类型varchar内容类似[{"Id":358579,"status":"SUCCESS"}]取出Id的内容 sql: SELECT (jsonb_array_elements(list::jsonb)->>'Id')::integer AS Id FROM history;

查某一个库里面所有的表和表里有几条数据

SELECT table_catalog, 
       table_schema, 
       table_name, 
       (xpath('/row/cnt/text()', xml_count))[1]::text::int AS row_count
FROM (
  SELECT table_catalog, 
         table_schema, 
         table_name, 
         query_to_xml(format('SELECT count(*) as cnt FROM %I.%I.%I', table_catalog, table_schema, table_name), false, true, '') AS xml_count
  FROM information_schema.tables
  WHERE table_schema = 'public'
) AS counts
ORDER BY row_count DESC;

查询所有序列sequence的名字和序列的最新值

SELECT schemaname,
       sequencename,
       last_value
FROM pg_sequences;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值