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

Как да оценим израза в оператора select в Postgres

можете да напишете SQL функция, която прави това вместо вас и да използвате напр. тези, доставени с postgres-utils:

select 
  c.name as cust_name,
  p.name as prod_name,
  p.cost as prod_cost,

  eval(  
    'select '||c.price_expression||' from product where id=:pid',
    '{"{cost}",:pid}',  
    array[ p.cost, p.id ]  
  )      as cust_cost

from product p,  customer c

Но разбира се може да е бавен, несигурен, можете да използвате материализирани изгледи, за да го кеширате по-лесно и т.н. - вижте документа там.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Не мога да инсталирам pg gem на Windows

  2. Поръчайте varchar низ като число

  3. PGEast, хардуерен сравнителен анализ и PG Performance Farm

  4. Инсталиране на PostgreSQL 9 на Windows:Не може да се запише в пътя на средата TEMP.

  5. PostGIS в действие