PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Quyền truy cập bảng động PostgreSQL

OK, tôi đã tìm ra giải pháp:

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;

và để chọn:

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

hoạt động cho 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. Cách chuyển một mảng json thành các hàng trong postgres

  2. PostgreSQL date () với múi giờ

  3. Sự khác biệt giữa `->>` và `->` trong Postgres SQL là gì?

  4. Thực hiện truy vấn hàng giờ hoạt động này trong PostgreSQL

  5. Cách tìm đường dẫn pg_config