PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Вземете списък на всички използвани таблици в заявка за SELECT на Postgresql

Опитайте:

create or replace function get_query_tables(p_query text) returns text[] language plpgsql as $$
declare
  x xml;
begin
  execute 'explain (format xml) ' || p_query into x;
  return xpath('//explain:Relation-Name/text()', x, array[array['explain', 'http://www.postgresql.org/2009/explain']])::text[];
end $$;

select get_query_tables('your query here');

dbfiddle



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Коригирайте „ГРЕШКА:  липсва запис на клауза FROM за таблица“ в PostgreSQL, когато използвате UNION, EXCEPT или INTERSECT

  2. Правилен начин за избор и актуализиране на SQL

  3. грешка при инсталиране на python pip psycopg2

  4. PostgreSQL - Направих актуализация на таблицата във функция, която създадох и сега редът на редовете в таблицата се промени

  5. pg Admin 4 - парола за потребител на postgres при опит за свързване към PostgreSQL 13 сървър