PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

PostgreSQL पर एकाधिक सूत्र

SQLFiddle

select
  2.5*((r-i)/(r+(6*i)-(7.5*n)+1)) as tera,
  (r-(2*i)-n)/(r+(2*i)-n) as tera2
from
  (
  select
    sum(case when wavelength between 340 and 345 then reflectance end) as r,
    sum(case when wavelength between 350 and 355 then reflectance end) as i,
    sum(case when wavelength between 360 and 365 then reflectance end) as n
  from
    test
  ) vars

एकाधिक तालिकाओं के लिए आप कुछ इस तरह उपयोग कर सकते हैं:

select
  table_name,
  2.5*((r-i)/(r+(6*i)-(7.5*n)+1)) as tera,
  (r-(2*i)-n)/(r+(2*i)-n) as tera2
from
  (
  select
    table_name,
    sum(case when wavelength between 340 and 345 then reflectance end) as r,
    sum(case when wavelength between 350 and 355 then reflectance end) as i,
    sum(case when wavelength between 360 and 365 then reflectance end) as n
  from
    (
      select 'table 1' as table_name, * from test
      union all
      select 'table 2', * from test
      union all
      select 'table 3', * from test      
      union all
      select 'table 4', * from test  
    ) as all_tables
  group by
    table_name
  ) vars

SQLFiddle

आपको बस टेबल नामों को अपने वास्तविक नामों में संशोधित करना होगा और union all . को दोहराना होगा जितनी बार आपको आवश्यकता हो।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. तालिका, फ़ील्ड और स्कीमा नाम का उपयोग करके संदर्भित तालिका का नाम खोजें

  2. SQLAlchemy क्वेरी त्रुटि दिखाती है तालिका/चयन योग्य 'वर्कफ़्लो' को स्वयं में शामिल नहीं कर सकती

  3. शर्त पर पहुंचने पर अन्य रिकॉर्ड्स के साथ कैसे छोड़ें?

  4. पोस्टग्रेज फ़ंक्शन

  5. PostgreSQL में उचित संज्ञाओं के स्टेमिंग को रोकें?