amazon-redshift - 我需要知道当前有锁的表的列表

标签 amazon-redshift

select 
  A.table_id, 
  last_update, 
  last_commit, 
  lock_owner_pid, 
  lock_status,
  B.table
from stv_locks as A left outer join svv_table_info as B on A.table_id = B.table_id
order by last_update asc

我使用了上面的查询,但在某些 table_ids 的名称中得到了 null。这些是什么?

最佳答案

select distinct(id) table_id
,trim(datname)   db_name
,trim(nspname)   schema_name
,trim(relname)   table_name
from stv_locks
join stv_tbl_perm on stv_locks.table_id = stv_tbl_perm.id
join pg_class on pg_class.oid = stv_tbl_perm.id
join pg_namespace on pg_namespace.oid = relnamespace
join pg_database on pg_database.oid = stv_tbl_perm.db_id;


这应该有效。您可以根据您的用例添加其他列!
如果我做出了错误的假设,请发表评论,我会重新调整我的答案。

关于amazon-redshift - 我需要知道当前有锁的表的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42730718/

相关文章:

odbc - AWS RedShift - .NET Core(ODBC 支持?)

sql - 将查询从 in() 重写为 join

sql - Redshift ROUND 函数在某些情况下不舍入?

performance - 加速 Redshift COPY 加载

python - 如何将 Select * Postgres/Redshift 查询结果放入字典(列/值)

memory-management - Redshift 查询 : error xx000 disk full redshift

stored-procedures - 无法在 Redshift Aginity 和 aginity pro 中创建存储过程

sql - PostgreSQL 数据的分组

amazon-redshift - Redshift - 插入身份列

pyspark - 在pyspark中以追加模式写入redshift