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

Изчислете точната месечна разлика между две дати

Можете да използвате age() . Ако стойността винаги е по-малка от 12 месеца, тогава един метод е:

SELECT iv.product_name,
       extract(month form age('2020-12-20'::date, MAX(iv.inventory_date::date))) AS months_in_inventory
FROM inventory iv
GROUP BY 1
ORDER BY 1;

По-точното изчисление взема предвид годината:

SELECT iv.product_name,
       (extract(year from age('2020-12-20'::date, MAX(iv.inventory_date::date))) * 12 +
        extract(month from age('2020-12-20'::date, MAX(iv.inventory_date::date)))
       ) AS months_in_inventory
FROM inventory iv
GROUP BY 1
ORDER BY 1;

Тук е db<>цигулка.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да ПРОМЕНЯ PostgreSQL таблица и да направя колона уникална?

  2. Защо postgresql 9.1 не работи с rails 3.0?

  3. Извличане на редове въз основа на условие

  4. Entity Framework Core PostgreSQL json заявка

  5. Грешка при инсталиране на psycopg2==2.6.2