Github user snuyanzin commented on the issue:
https://github.com/apache/flink/pull/6007
@twalthr thank you for your comment.
I took a similar ticket in Calcite/Avatica from which the current depends
on and I pointed this discrepancy in the [comment
](https://issues.apache.org/jira/browse/CALCITE-2303?focusedCommentId=16480420&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-16480420).
To fix i t the class `org.apache.calcite.avatica.util.DateTimeUtils` should
be changed which is presented in both avatica and flink.
At the same time different db's provide a little bit different behavior
(please have a look at the links below)
looks like in case of day of week extraction for Oracle, MySql Sunday = 1,
for Postgresql Sunday = 0, for Microsoft SQL Server it depends on property set
by user
On the other hand there is a standard
[ISO8601](https://en.wikipedia.org/wiki/ISO_week_date) which also defines
weekday, day of years e.g. This is also a part of
[CALCITE-2303](https://issues.apache.org/jira/browse/CALCITE-2303).
So my suggestion is within this ticket provide support for all operations
which could come from
[CALCITE-2303](https://issues.apache.org/jira/browse/CALCITE-2303): `dow`,
`decade`, `epoch`, `isodow`, `isoyear`, `microsecond` and `millisecond`
However yes you are right it is required to choose what approach for
dayOfWeek to use. IMHO the simplest way is to use whatever Calcite/avatica
provides
At the same time
[here](https://issues.apache.org/jira/browse/CALCITE-2303?focusedCommentId=16482767&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-16482767)
Julian Hyde says that
> In short, yes, do whatever PostgreSQL does.
So they would like to align the behavior with Postrgresql
About different db's day of week
So the Postgresql's behavior is described [here
](https://www.postgresql.org/docs/9.1/static/functions-datetime.html#FUNCTIONS-DATETIME-EXTRACT)
with Sunday = 0 + it supports ISO8601 via `isodow `and `isoyear`
the Oracle's behavior is described [here
](https://docs.oracle.com/cd/E37483_01/server.751/es_eql/src/ceql_functions_date_extract.html)
with Sunday = 1, so far have not found info about support of 8601 via
`extract` while it is via `to_char/to_date`
Microsoft SQL Server [allows to set up the first
weekday](https://docs.microsoft.com/en-us/sql/t-sql/statements/set-datefirst-transact-sql?view=sql-server-2017)
at the same time extraction is done via `datepart` not `extract`
MySQL [provides
weekday](https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_extract)
with Sunday = 1
---