Первый пост здесь, и я сделал кучу поисков, чтобы найти это, но не знаю терминологию для поиска для начала. У меня есть таблица в SQL Server 2012, содержащих данные расписаний с этими столбцами: Name, ID, ENTEREDONDTM, EVENTDATE, STARTDTM, ENDDTM, STARTREASON, ENDREASON
sql row_number остается неизменным, если не соблюдены критерии.
Я пытаюсь сделать row_number
где значение в row_number остается тем же, если StartReason = 'newShift'
в этом случае я не хотел бы, чтобы его увеличить на 1 .
Моя конечная цель, чтобы найти общую длину сдвига в смену, и я знаю, как сделать эти расчеты, основанные на startdtm
и enddtm
, но нет тока колонков с shiftID
для меня группу.
не ясно для меня достаточно ... есть вторая запись с конечным временем для этого же сдвига? или все это на этой же записи? – Randy
Вот немного больше информации (я не знаю, как разместить таблицу данных примеров здесь). startdtm будет, когда они начнут синхронизировать, и enddtm, когда они выходят из строя, начинают рассуждать, почему они синхронизированы. Таким образом, у них может быть запись, которая является startdtm = 8am (в формате даты и времени) и enddtm = 12pm и startreason = newShift Следующая строка будет startdtm = 12:30 pm и enddtm = 4pm и startreason = 30minbreak. Следующая строка обычно будет следующей сменой, и мы знаем только, что на основе startreason = newShift. Endreason всегда выходит, поэтому он не помогает. –