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

वित्तीय वर्ष के आधार पर दिनांक विभाजन

मैं वास्तव में एंडोमर के समाधान का समर्थन करता हूं (ऐसी प्रक्रियाओं के अतिरिक्त जो स्वचालित रूप से अवधि तालिका को भरती हैं), लेकिन मनोरंजन के लिए यहां एक समाधान है जिसकी आवश्यकता नहीं है।

CREATE TABLE your_table (start_date date, end_date date);
INSERT INTO your_table VALUES ('Jan-17-2008', 'May-20-2009');

SELECT
    GREATEST(start_date, ('04-01-'||series.year)::date) AS year_start,
    LEAST(end_date, ('03-31-'||series.year + 1)::date) AS year_end
FROM
    (SELECT
        start_date,
        end_date,
        generate_series(
            date_part('year', your_table.start_date - INTERVAL '3 months')::int,
            date_part('year', your_table.end_date - INTERVAL '3 months')::int)
    FROM your_table) AS series(start_date, end_date, year)
ORDER BY
    start_date;


  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. pgadmin 4 . का उपयोग करके linux में postgresql में शेपफाइल्स आयात करना

  3. PostgreSQL 9.0 . में विभाजन तालिका का आकार

  4. postgresql 9.5:रिक्त स्थान के आधार पर एक स्ट्रिंग को दो क्षेत्रों में विभाजित करने का प्रयास कर रहा है

  5. क्या मुझे लेनदेन में चयन शामिल करना चाहिए?