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

PostgreSQL динамичен достъп до таблици

Добре, намерих решение:

CREATE OR REPLACE FUNCTION getProductById(cid int) RETURNS RECORD AS $$
    DECLARE
    result RECORD;

    BEGIN
        EXECUTE 'SELECT * FROM ' || (SELECT ('products.' || (select category_name from category where category_id = cid) || '_view')::regclass) INTO result;

        RETURN result;
    END;
$$ LANGUAGE plpgsql;

и за да изберете:

SELECT * FROM getProductById(7) AS b (category_id int, ... );

работи за PostgreSQL 9.x



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как date_trunc() работи в PostgreSQL

  2. Как да използвам задействания „за изявление“ в postgres?

  3. ГРЕШКА:размерът на масива надвишава максимално допустимия (1073741823)

  4. GROUP BY в клауза UPDATE FROM

  5. Как да разрешите грешката „fe_sendauth:няма предоставена парола“ в Rails с помощта на PostgreSQL?