добавить столбец заказа в SQL оракула - PullRequest
1 голос
/ 30 сентября 2019

Я должен сделать в SQL Server запрос планирования времени. Для каждого сотрудника я должен показать, в какой день он работает или нет. Иногда у человека может быть рабочий график на две недели. Например, на неделе 1 он не работает в понедельник, вторник и пятницу, а на неделе 2 он не работает в понедельник и пятницу.

Я уже получил запрос, но иногда результат не начинается в понедельник. Я хочу добавить номер недели, чтобы иметь возможность сделать заказ. Пример:

empl    date        day_nbr Working
1       01/11/2017  3       FULLDAY
1       02/11/2017  4       FULLDAY
1       03/11/2017  5       OFF
1       04/11/2017  6       OFF
1       05/11/2017  7       OFF
1       06/11/2017  1       OFF
1       07/11/2017  2       FULLDAY
1       08/11/2017  3       FULLDAY
1       09/11/2017  4       FULLDAY
1       10/11/2017  5       OFF
1       11/11/2017  6       OFF
1       12/11/2017  7       OFF
1       13/11/2017  1       OFF
1       14/11/2017  2       OFF
2       01/09/2018  6       OFF
2       02/09/2018  7       OFF
2       03/09/2018  1       FULLDAY
2       04/09/2018  2       FULLDAY
2       05/09/2018  3       OFF
2       06/09/2018  4       FULLDAY
2       07/09/2018  5       FULLDAY

Для empl=1 вы видите, что неделя начинается с day_nbr 3. Я хочу добавить номер недели столбца, чтобы у меня был следующий результат:

empl    date        day_nbr Working     weeknumber
1       01/11/2017  3       FULLDAY     1
1       02/11/2017  4       FULLDAY     1
1       03/11/2017  5       OFF         1
1       04/11/2017  6       OFF         1
1       05/11/2017  7       OFF         1
1       06/11/2017  1       OFF         2
1       07/11/2017  2       FULLDAY     2
1       08/11/2017  3       FULLDAY     2
1       09/11/2017  4       FULLDAY     2
1       10/11/2017  5       OFF         2
1       11/11/2017  6       OFF         2
1       12/11/2017  7       OFF         1
1       13/11/2017  1       OFF         1
1       14/11/2017  2       OFF         1
2       01/09/2018  6       OFF         1
2       02/09/2018  7       OFF         1
2       03/09/2018  1       FULLDAY     1
2       04/09/2018  2       FULLDAY     1
2       05/09/2018  3       OFF         1
2       06/09/2018  4       FULLDAY     1
2       07/09/2018  5       FULLDAY     1

Таким образом, я могу заказать на weeknumber, day_nbr, и я всегда начну с day_nbr 1.

Причина, по которой я хочу сделать это, состоит в том, чтобы иметь возможность сделать сводную таблицу, подобную этой, для empl = 1

result I want

Но проблема, которую я получаю, это:

result if I don't have the week_nbr

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...