У меня есть оператор выбора, который вставляет данные в #temptabl
е, это выглядит следующим образом:Вставки во временную таблицу итерации идентификационного столбца
select null as ID, Name, AnotherId, date into #TempTable from Table
.
В результате #temptable
выглядит следующим образом:
| Id | Name | AnotherId | Datetime |
---------------------------------------------------
| null | Login | 10 |2016-01-01 15:00:00|
| null | Command| 10 |2016-01-01 15:00:01|
| null | Login | 20 |2016-01-01 15:01:00|
| null | Command| 10 |2016-01-01 15:01:00|
| null | Logout | 10 |2016-01-01 15:01:01|
| null | Command| 20 |2016-01-01 15:01:02|
| null | Logout | 20 |2016-01-01 15:02:00|
Я хотел бы поставить в колонке Id уникальный идентификатор, но с некоторыми условиями, как:
- Когда есть Логин присвоить уникальный Id (например, для 1-го входа введите Id = 1)
- Затем для следующего входа в систему Id = 2
- Для команд между входом и выходом из системы, которые имеют тот же AnotherId затем помещает соответствующий Id (например, для AnotherId = 10 у меня должны быть все строки, у которых есть AnotherId = 10 -> Id = 1)
Как следует продолжить? Любая помощь оценивается.
Edit: Результаты, которые я хочу:
| Id | Name | AnotherId | Datetime |
| 1 | Login | 10 |2016-01-01 15:00:00|
| 1 | Command| 10 |2016-01-01 15:00:01|
| 2 | Login | 20 |2016-01-01 15:01:00|
| 1 | Command| 10 |2016-01-01 15:01:00|
| 1 | Logout | 10 |2016-01-01 15:01:00|
| 2 | Command| 20 |2016-01-01 15:01:02|
| 2 | Logout | 20 |2016-01-01 15:02:00
Вы должны отредактировать вопрос и показать результаты, которые вы хотите. Третье условие трудно выразить. –
Отредактирован результат. – MisterM
Мой ответ поможет вам. –