You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@superset.apache.org by "MohsenRazavi (via GitHub)" <gi...@apache.org> on 2026/01/29 08:50:02 UTC

[D] Jalali calendar support for time grain on Gregorian timestamps [superset]

GitHub user MohsenRazavi created a discussion: Jalali calendar support for time grain on Gregorian timestamps

hi friends
I have a dataset with Gregorian dates, but I want to compute the time grain (day, month, year, etc.) based on the Jalali (Persian) calendar. Is there a way in Superset to apply Jalali-based time grains on a Gregorian timestamp column or I should convert the column to jalali first ?

GitHub link: https://github.com/apache/superset/discussions/37546

----
This is an automatically sent email for notifications@superset.apache.org.
To unsubscribe, please send an email to: notifications-unsubscribe@superset.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org


Re: [D] Jalali calendar support for time grain on Gregorian timestamps [superset]

Posted by "dosubot[bot] (via GitHub)" <gi...@apache.org>.
GitHub user dosubot[bot] added a comment to the discussion: Jalali calendar support for time grain on Gregorian timestamps

<!-- Greeting -->
Hi @MohsenRazavi! I'm [Dosu](https://go.dosu.dev/dosubot) and I’m helping the superset team.

<!-- Answer -->
Superset does not natively support applying Jalali (Persian) calendar time grains (like day, month, year) directly on Gregorian timestamp columns. The Persian calendar support currently available is focused on the date filter UI, allowing users to select Jalali date ranges, but time grain computations (for grouping/aggregating data) are still based on the Gregorian calendar and handled by your database's date/time functions or SQL expressions [see details](https://github.com/apache/superset/pull/36111) [engine spec docs](https://github.com/apache/superset/blob/master/superset/db_engine_specs/README.md).

If you need Jalali-based time grains, you'll need to convert your Gregorian timestamps to Jalali in your database or via a custom SQL expression (for example, in a virtual dataset), and then aggregate/group by the Jalali date parts. There is no built-in feature for this conversion in Superset's time grain functionality as of now [reference](https://github.com/apache/superset/blob/master/superset/db_engine_specs/mysql.py) [reference](https://github.com/apache/superset/pull/30926).

If your database supports Jalali date functions or you can add a UDF for conversion, you can define a calculated column or custom SQL to extract Jalali year/month/day and use those for grouping.


<!-- Dosu Comment Footer -->
*To reply, just mention [@dosu](https://go.dosu.dev/dosubot).*

---
<sup>How did I do? [Good](https://app.dosu.dev/response-feedback/11414bad-801a-46c2-8a17-d5ec28f8aa17?feedback_type=great_response) | [Irrelevant](https://app.dosu.dev/response-feedback/11414bad-801a-46c2-8a17-d5ec28f8aa17?feedback_type=irrelevant_answer) | [Incorrect](https://app.dosu.dev/response-feedback/11414bad-801a-46c2-8a17-d5ec28f8aa17?feedback_type=incorrect_sources) | [Verbose](https://app.dosu.dev/response-feedback/11414bad-801a-46c2-8a17-d5ec28f8aa17?feedback_type=too_verbose) | [Hallucination](https://app.dosu.dev/response-feedback/11414bad-801a-46c2-8a17-d5ec28f8aa17?feedback_type=hallucination) | [Report 🐛](https://app.dosu.dev/response-feedback/11414bad-801a-46c2-8a17-d5ec28f8aa17?feedback_type=bug_report) | [Other](https://app.dosu.dev/response-feedback/11414bad-801a-46c2-8a17-d5ec28f8aa17?feedback_type=other)</sup>

[![Chat with Dosu](https://dosu.dev/dosu-chat-badge.svg)](https://app.dosu.dev/a28d3c7e-a9d3-459e-9fb6-3a6f9ff4f357/ask?utm_source=github)&nbsp;[![Open in Cursor](https://dosu.dev/dosu-in-cursor.svg)](https://cursor.com/link/prompt?text=Superset%20does%20not%20natively%20support%20applying%20Jalali%20%28Persian%29%20calendar%20time%20grains%20%28like%20day%2C%20month%2C%20year%29%20directly%20on%20Gregorian%20timestamp%20columns.%20The%20Persian%20calendar%20support%20currently%20available%20is%20focused%20on%20the%20date%20filter%20UI%2C%20allowing%20users%20to%20select%20Jalali%20date%20ranges%2C%20but%20time%20grain%20computations%20%28for%20grouping/aggregating%20data%29%20are%20still%20based%20on%20the%20Gregorian%20calendar%20and%20handled%20by%20your%20database%27s%20date/time%20functions%20or%20SQL%20expressions%C2%A0%5Bsee%20details%5D%28https%3A//github.com/apache/superset/pull/36111%29%C2%A0%5Bengine%20spec%20docs%5D%28https%3A//github.com/apache/superset/blob/master/super
 set/db_engine_specs/README.md%29.%0A%0AIf%20you%20need%20Jalali-based%20time%20grains%2C%20you%27ll%20need%20to%20convert%20your%20Gregorian%20timestamps%20to%20Jalali%20in%20your%20database%20or%20via%20a%20custom%20SQL%20expression%20%28for%20example%2C%20in%20a%20virtual%20dataset%29%2C%20and%20then%20aggregate/group%20by%20the%20Jalali%20date%20parts.%20There%20is%20no%20built-in%20feature%20for%20this%20conversion%20in%20Superset%27s%20time%20grain%20functionality%20as%20of%20now%C2%A0%5Breference%5D%28https%3A//github.com/apache/superset/blob/master/superset/db_engine_specs/mysql.py%29%C2%A0%5Breference%5D%28https%3A//github.com/apache/superset/pull/30926%29.%0A%0AIf%20your%20database%20supports%20Jalali%20date%20functions%20or%20you%20can%20add%20a%20UDF%20for%20conversion%2C%20you%20can%20define%20a%20calculated%20column%20or%20custom%20SQL%20to%20extract%20Jalali%20year/month/day%20and%20use%20those%20for%20grouping.)&nbsp;[![Join Discord](https://img.shields.io/badge/join-
 5865F2?logo=discord&logoColor=white&label=)](https://go.dosu.dev/discord-bot)&nbsp;[![Share on X](https://img.shields.io/badge/X-share-black)](https://twitter.com/intent/tweet?text=%40dosu_ai%20helped%20me%20solve%20this%20issue!&url=https%3A//github.com/apache/superset/discussions/37546)

GitHub link: https://github.com/apache/superset/discussions/37546#discussioncomment-15637583

----
This is an automatically sent email for notifications@superset.apache.org.
To unsubscribe, please send an email to: notifications-unsubscribe@superset.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org


Re: [D] Jalali calendar support for time grain on Gregorian timestamps [superset]

Posted by "dosubot[bot] (via GitHub)" <gi...@apache.org>.
GitHub user dosubot[bot] edited a comment on the discussion: Jalali calendar support for time grain on Gregorian timestamps

<!-- Greeting -->
Hi @MohsenRazavi! I'm [Dosu](https://go.dosu.dev/dosubot) and I’m helping the superset team.

<!-- Answer -->
Superset does not natively support applying Jalali (Persian) calendar time grains (like day, month, year) directly on Gregorian timestamp columns. The Persian calendar support currently available is focused on the date filter UI, allowing users to select Jalali date ranges, but time grain computations (for grouping/aggregating data) are still based on the Gregorian calendar and handled by your database's date/time functions or SQL expressions [see details](https://github.com/apache/superset/pull/36111) [engine spec docs](https://github.com/apache/superset/blob/master/superset/db_engine_specs/README.md).

If you need Jalali-based time grains, you'll need to convert your Gregorian timestamps to Jalali in your database or via a custom SQL expression (for example, in a virtual dataset), and then aggregate/group by the Jalali date parts. There is no built-in feature for this conversion in Superset's time grain functionality as of now [reference](https://github.com/apache/superset/blob/master/superset/db_engine_specs/mysql.py) [reference](https://github.com/apache/superset/pull/30926).

If your database supports Jalali date functions or you can add a UDF for conversion, you can define a calculated column or custom SQL to extract Jalali year/month/day and use those for grouping.


<!-- Dosu Comment Footer -->
*To reply, just mention [@dosu](https://go.dosu.dev/dosubot?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=reply-with-mention&utm_term=apache%2Fsuperset).*

---

Docs are dead. Just use [Dosu](https://dosu.dev?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=static-docs-tagline&utm_term=apache%2Fsuperset).

[![Leave Feedback](https://img.shields.io/badge/Leave%20Feedback-555555?style=flat)](https://app.dosu.dev/response-feedback?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=static-docs-feedback&utm_term=apache%2Fsuperset&message_id=11414bad-801a-46c2-8a17-d5ec28f8aa17) [![Ask Dosu about superset](https://img.shields.io/badge/Ask%20Dosu%20about%20superset-2f7b3f?style=flat&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB3aWR0aD0iODYiIGhlaWdodD0iODkiIHZpZXdCb3g9IjAgMCA4NiA4OSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNS4yOTIzNiAxMi43OTI4TDE3Ljc1OTMgNi42ODE4OFY3Mi41NjY3TDUuMjkyMzYgODQuMDYxOFYxMi43OTI4WiIgZmlsbD0iI0I0QkI5MSIvPjxwYXRoIGQ9Ik0xOC4yNTc1IDczLjExOTZMNTkuMTMyOSA3Mi43NDhMNTEuNzAxMSA4Mi40MDk1TDI5LjAzMzggODYuMjkxTDYuMjM5NjIgODUuMTU1NEwxOC4yNTc1IDczLjExOTZaIiBmaWxsPSIjNzc4NTYxIi8%2BPHBhdGggZD0iTTE3LjQ5MTYgMy43MzYzM0wzLjU4NTU3IDEyLjcwOTlWODMuNTc5MkMzLjU4NTU3IDg0Ljc1NDIgNC45ODU2MyA4NS4zNjUyIDUuODQ3MDUg
 ODQuNTY2TDE5LjYyOTYgNzEuNzgwMSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSI2LjQyODQ0IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48bWFzayBpZD0iZG9zdS1kLWN1dG91dCIgZmlsbD0id2hpdGUiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDAuNzA0IDAuNTE4MDY2SDE3LjA0MzlWNzYuMjIyMUg0MC43MDRINDIuNTgwNUg0Ny44MDEzQzY4LjcwNjQgNzYuMjIyMSA4NS42NTMzIDU5LjI3NTIgODUuNjUzMyAzOC4zNzAxQzg1LjY1MzMgMTcuNDY1IDY4LjcwNjMgMC41MTgwNjYgNDcuODAxMyAwLjUxODA2Nkg0Mi41ODA1SDQwLjcwNFoiLz48L21hc2s%2BPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00MC43MDQgMC41MTgwNjZIMTcuMDQzOVY3Ni4yMjIxSDQwLjcwNEg0Mi41ODA1SDQ3LjgwMTNDNjguNzA2NCA3Ni4yMjIxIDg1LjY1MzMgNTkuMjc1MiA4NS42NTMzIDM4LjM3MDFDODUuNjUzMyAxNy40NjUgNjguNzA2MyAwLjUxODA2NiA0Ny44MDEzIDAuNTE4MDY2SDQyLjU4MDVINDAuNzA0WiIgZmlsbD0iI0YzRjZGMSIvPjxwYXRoIGQ9Ik0xNy4wNDM5IDAuNTE4MDY2Vi02LjU3OTE5SDkuOTQ2NjlWMC41MTgwNjZIMTcuMDQzOVpNMTcuMDQzOSA3Ni4yMjIxSDkuOTQ2NjlWODMuMzE5NEgxNy4wNDM5Vjc2LjIyMjFaTTE3LjA0MzkgNy42MTUzMkg0MC43MDRWLTYuNTc5MTlIMTcuMDQzOVY3LjYxNTMyWk0
 yNC4xNDEyIDc2LjIyMjFWMC41MTgwNjZIOS45NDY2OVY3Ni4yMjIxSDI0LjE0MTJaTTQwLjcwNCA2OS4xMjQ5SDE3LjA0MzlWODMuMzE5NEg0MC43MDRWNjkuMTI0OVpNNDIuNTgwNSA2OS4xMjQ5SDQwLjcwNFY4My4zMTk0SDQyLjU4MDVWNjkuMTI0OVpNNDcuODAxMyA2OS4xMjQ5SDQyLjU4MDVWODMuMzE5NEg0Ny44MDEzVjY5LjEyNDlaTTc4LjU1NiAzOC4zNzAxQzc4LjU1NiA1NS4zNTU1IDY0Ljc4NjcgNjkuMTI0OSA0Ny44MDEzIDY5LjEyNDlWODMuMzE5NEM3Mi42MjYxIDgzLjMxOTQgOTIuNzUwNSA2My4xOTQ5IDkyLjc1MDUgMzguMzcwMUg3OC41NTZaTTQ3LjgwMTMgNy42MTUzMkM2NC43ODY2IDcuNjE1MzIgNzguNTU2IDIxLjM4NDcgNzguNTU2IDM4LjM3MDFIOTIuNzUwNUM5Mi43NTA1IDEzLjU0NTMgNzIuNjI2IC02LjU3OTE5IDQ3LjgwMTMgLTYuNTc5MTlWNy42MTUzMlpNNDIuNTgwNSA3LjYxNTMySDQ3LjgwMTNWLTYuNTc5MTlINDIuNTgwNVY3LjYxNTMyWk00MC43MDQgNy42MTUzMkg0Mi41ODA1Vi02LjU3OTE5SDQwLjcwNFY3LjYxNTMyWiIgZmlsbD0iYmxhY2siIG1hc2s9InVybCgjZG9zdS1kLWN1dG91dCkiLz48cGF0aCBkPSJNNjguOTIxNSAzNi4wMTM1QzY4LjkyMTUgMzYuMDEzNSA2NS43MzY5IDQ5LjQ3MzggNTEuNDIzMSA0OS40NzM4QzM3LjEwOTMgNDkuNDczOCAzMi41Nzg3IDM3LjM1OTYgMzIuNTc4NyAzNi4wMTM1IiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjcuNjkxNjEi
 IHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjxwYXRoIGQ9Ik0wLjM0ODYzMyA4NS40OTQ2QzAuMzQ4NjMzIDg1LjQ5NDYgMjkuNDg1NiA4NS44MzA5IDM0LjgwOSA4NS42OThDNDQuODMzNyA4NS40NDc3IDUxLjI4NzIgODQuNDAyIDU3LjUyNjkgNzguOTcyNEM2Mi44MTI5IDc0LjM3MjcgNzUuMTM0MiA1OS42ODM2IDc1LjEzNDIgNTkuNjgzNiIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSI2LjE2NDgyIi8%2BPC9zdmc%2B)](https://github.dosu.com/apache/superset?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=static-docs-ask-repo&utm_term=apache%2Fsuperset) [![Share Dosu with your team](https://img.shields.io/badge/Share%20Dosu%20with%20your%20team-1f6feb?style=flat)](https://app.dosu.dev/signup?referrer=openSource&source=github-footer&utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=static-docs-share-team&utm_term=apache%2Fsuperset)

GitHub link: https://github.com/apache/superset/discussions/37546#discussioncomment-15637583

----
This is an automatically sent email for notifications@superset.apache.org.
To unsubscribe, please send an email to: notifications-unsubscribe@superset.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org