Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

136
Vistas
Postgres Alternative to \du to view group role membership

Is there an alternative to using psql \du to retrieve the Member of column using a builtin Postgres function or view? Thank you.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

In psql you can echo the actual queries generated by backslash commands.

Use the --echo-hidden parameter

psql --echo-hidden ...

or set the variable ECHO_HIDDEN in psql, example:

test=# \set ECHO_HIDDEN on
test=# \du
********* QUERY **********
SELECT r.rolname, r.rolsuper, r.rolinherit,
  r.rolcreaterole, r.rolcreatedb, r.rolcanlogin,
  r.rolconnlimit, r.rolvaliduntil,
  ARRAY(SELECT b.rolname
        FROM pg_catalog.pg_auth_members m
        JOIN pg_catalog.pg_roles b ON (m.roleid = b.oid)
        WHERE m.member = r.oid) as memberof
, r.rolreplication
, r.rolbypassrls
FROM pg_catalog.pg_roles r
ORDER BY 1;
******************************

Read about psql in the documentation.

over 4 years ago · Santiago Trujillo Denunciar

0

I figured it out and here's my answer:

SELECT
  pg_roles.rolname,
  pg_auth_members.member,
  (SELECT pg_roles.rolname FROM pg_roles WHERE oid = pg_auth_members.member)
FROM
  pg_roles, pg_auth_members
WHERE
  pg_auth_members.roleid = ( SELECT oid FROM pg_roles WHERE rolname = 'my_group') and pg_roles.rolname = 'my_group';

So, this query would return something like this:

   rolname  | member | rolname 
------------+--------+---------
   my_group |  18068 | first_member
   my_group |  18069 | second_member
(2 rows)
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda