欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

postgresql?常用SQL語句小結(jié)

 更新時(shí)間:2022年11月15日 22:51:12   投稿:mdxy-dxy  
postgresql使用過程中常用到的一些sql語句,方便我們快速使用查詢一些操作特整理一下,方便需要的朋友

1、查詢鏈接數(shù)

SELECT sum(numbackends) FROM pg_stat_database;

2、查看死鎖狀態(tài)

select pid,
? ? ? ?usename,
? ? ? ?pg_blocking_pids(pid) as blocked_by,
? ? ? ?query as blocked_query
from pg_stat_activity
where cardinality(pg_blocking_pids(pid)) > 0;

3、刪除死鎖進(jìn)程

SELECT pg_cancel_backend(__pid__);
SELECT pg_terminate_backend(__pid__);

4、備份數(shù)據(jù)庫(kù)

# sql文件
pg_dump dangerousdb > db.sql
# tar文件
pg_dump -U postgres -F c dangerousdb > dangerousdb.tar
# gz文件
pg_dump -U postgres dangerousdb | gzip > dangerousdb.gz

5、還原數(shù)據(jù)庫(kù)

# 已經(jīng)存在數(shù)據(jù)庫(kù)
pg_restore -U postgres -Ft -d dbcooper < dbcooper.tar
# 創(chuàng)建新數(shù)據(jù)庫(kù)
pg_restore -U postgres -Ft -C -d dbcooper < dbcooper.tar
#? ?

6、插入數(shù)據(jù)

插入單條數(shù)據(jù)

INSERT INTO TABLE_1
(
column_1,
column_2,
column_3
)
values(
column_1,
column_2,
column_3
)

插入多條數(shù)據(jù)

INSERT INTO TABLE_1
(
column_1,
column_2,
column_3
)
values(
column_1,
column_2,
column_3
),(
column_1,
column_2,
column_3
)...

從一張表查詢到的數(shù)據(jù)插入到另一張表

INSERT INTO TABLE_1
(
column_1,
column_2,
column_3
)
SELECT
column_1,
column_2,
column_3
FROM
TABLE_2
where TABLE_2條件;

7 、查詢pg中單張表的大?。ú话饕?/h2>
select
? ? pg_size_pretty(pg_relation_size('schema.table_name'));

8、查詢數(shù)據(jù)庫(kù)中所有表的大小

select
? ? relname,
? ? pg_size_pretty(pg_relation_size(relid))
from
? ? pg_stat_user_tables
where
? ? schemaname = 'public'
order by
? ? pg_relation_size(relid) desc;

9、按順序查看索引

select
? ? indexrelname,
? ? pg_size_pretty(pg_relation_size(relid))
from
? ? pg_stat_user_indexes
where
? ? schemaname = 'public'
order by
? ? pg_relation_size(relid) desc;

10 、查詢數(shù)據(jù)庫(kù)的大小

select
? ? pg_database.datname,
? ? pg_size_pretty (pg_database_size(pg_database.datname)) as size
from
? ? pg_database;

11、查詢被鎖定的表

select
? ? pg_class.relname as table,
? ? pg_database.datname as database,
? ? pid,
? ? mode,
? ? granted
from
? ? pg_locks,
? ? pg_class,
? ? pg_database
where
? ? pg_locks.relation = pg_class.oid
? ? and pg_locks.database = pg_database.oid;

12 、查詢一個(gè)Schema下面的所有表的總大?。▎挝籑B,包括索引和數(shù)據(jù))

select
? ? schemaname ,
? ? round(sum(pg_total_relation_size(schemaname || '.' || tablename))/ 1024 / 1024) "Size_MB"
from
? ? pg_tables
where
? ? schemaname = '<schemaname>'
group by
? ? 1;

13 、查詢所有表的大小并排序(包含索引)

select
? ? table_schema || '.' || table_name as table_full_name,
? ? pg_size_pretty(pg_total_relation_size('"' || table_schema || '"."' || table_name || '"')) as size
from
? ? information_schema.tables
order by
? ? pg_total_relation_size('"' || table_schema || '"."' || table_name || '"') desc
limit 20;

14 、查詢表大小按大小排序并分離data與index

select
? ? table_name,
? ? pg_size_pretty(table_size) as table_size,
? ? pg_size_pretty(indexes_size) as indexes_size,
? ? pg_size_pretty(total_size) as total_size
from
? ? (
? ? select
? ? ? ? table_name,
? ? ? ? pg_table_size(table_name) as table_size,
? ? ? ? pg_indexes_size(table_name) as indexes_size,
? ? ? ? pg_total_relation_size(table_name) as total_size
? ? from
? ? ? ? (
? ? ? ? select
? ? ? ? ? ? ('"' || table_schema || '"."' || table_name || '"') as table_name
? ? ? ? from
? ? ? ? ? ? information_schema.tables) as all_tables
? ? order by
? ? ? ? total_size desc) as pretty_sizes;

或者

select
? ? table_name,
? ? pg_size_pretty(table_size) as table_size,
? ? pg_size_pretty(indexes_size) as indexes_size,
? ? pg_size_pretty(total_size) as total_size
from
? ? (
? ? select
? ? ? ? table_name,
? ? ? ? pg_table_size(table_name) as table_size,
? ? ? ? pg_indexes_size(table_name) as indexes_size,
? ? ? ? pg_total_relation_size(table_name) as total_size
? ? from
? ? ? ? (
? ? ? ? select
? ? ? ? ? ? ('' || table_schema || '.' || table_name || '') as table_name
? ? ? ? from
? ? ? ? ? ? information_schema.tables) as all_tables
? ? order by
? ? ? ? total_size desc) as pretty_sizes;

到此這篇關(guān)于postgresql 常用SQL語句小結(jié)的文章就介紹到這了,更多相關(guān)postgresql 常用SQL內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • PostgreSQL Sequence序列的使用詳解

    PostgreSQL Sequence序列的使用詳解

    這篇文章主要介紹了PostgreSQL Sequence序列的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • postgresql SQL語句變量的使用說明

    postgresql SQL語句變量的使用說明

    這篇文章主要介紹了postgresql SQL語句變量的使用說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • PgSQL條件語句與循環(huán)語句示例代碼詳解

    PgSQL條件語句與循環(huán)語句示例代碼詳解

    這篇文章主要介紹了PgSQL條件語句與循環(huán)語句,pgSQL中有兩種條件語句分別為if與case語句,每種語句通過示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • postgresql如何兼容MySQL if函數(shù)

    postgresql如何兼容MySQL if函數(shù)

    這篇文章主要介紹了postgresql如何兼容MySQL if函數(shù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • PostgreSQL長(zhǎng)事務(wù)概念解析

    PostgreSQL長(zhǎng)事務(wù)概念解析

    pg中的長(zhǎng)事務(wù)會(huì)影響表中垃圾回收,導(dǎo)致表的年齡增長(zhǎng)無法freeze。能消耗事務(wù)的只有當(dāng)執(zhí)行了一些DML或者DDL操作后才能算是我們通常說的長(zhǎng)事務(wù)。否則只能算是我們常說的長(zhǎng)連接,當(dāng)然長(zhǎng)連接也有很多弊端,例如占用內(nèi)存、cpu等資源
    2022-09-09
  • postgresql流復(fù)制原理以及流復(fù)制和邏輯復(fù)制的區(qū)別說明

    postgresql流復(fù)制原理以及流復(fù)制和邏輯復(fù)制的區(qū)別說明

    這篇文章主要介紹了postgresql流復(fù)制原理以及流復(fù)制和邏輯復(fù)制的區(qū)別說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • PostgreSQL自定義函數(shù)并且調(diào)用方式

    PostgreSQL自定義函數(shù)并且調(diào)用方式

    這篇文章主要介紹了PostgreSQL如何自定義函數(shù)并且調(diào)用,本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • PostgreSQL 存儲(chǔ)過程的進(jìn)階講解(含游標(biāo)、錯(cuò)誤處理、自定義函數(shù)、事務(wù))

    PostgreSQL 存儲(chǔ)過程的進(jìn)階講解(含游標(biāo)、錯(cuò)誤處理、自定義函數(shù)、事務(wù))

    PL/pgSQL 游標(biāo)允許我們封裝一個(gè)查詢,然后每次處理結(jié)果集中的一條記錄,這篇文章主要介紹了PostgreSQL 存儲(chǔ)過程的進(jìn)階介紹(含游標(biāo)、錯(cuò)誤處理、自定義函數(shù)、事務(wù)),需要的朋友可以參考下
    2023-03-03
  • PostgreSQL使用jsonb進(jìn)行數(shù)組增刪改查的操作詳解

    PostgreSQL使用jsonb進(jìn)行數(shù)組增刪改查的操作詳解

    有時(shí)候我們需要使用PostgreSQL這種結(jié)構(gòu)化數(shù)據(jù)庫(kù)來存儲(chǔ)一些非結(jié)構(gòu)化數(shù)據(jù),PostgreSQL恰好又提供了json這種數(shù)據(jù)類型,這里我們來簡(jiǎn)單介紹使用jsonb的一些常見操作,需要的朋友可以參考下
    2024-03-03
  • postgresql 實(shí)現(xiàn)將字段為空的值替換為指定值

    postgresql 實(shí)現(xiàn)將字段為空的值替換為指定值

    這篇文章主要介紹了postgresql 實(shí)現(xiàn)將字段為空的值替換為指定值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01

最新評(píng)論