SQL Server Выберите все, кроме данных, для которых следующая строка имеет дату менее 10 миллисекунд - PullRequest
0 голосов
/ 19 сентября 2018

Я использую SQL Server 2017 и столкнулся с проблемой.У меня есть следующие данные (образец показан ниже).

enter image description here

Мне нужно выбрать все номера карт, кроме тех, за которыми следует событиекоторый содержит тот же cardnumber, в то время как значение result равно not ok.

Разница во времени между этими двумя событиями составляет не более 200 миллисекунд (поэтому я верю, что в предложении where это должно быть datediff(ms, cardnumberofpreviousevent, cardnumberofnextevent) > 200.

Так что в этом случае желаемым результатом должны быть всестроки, показанные выше (строки с 426 по 433), за исключением отмеченной строки 432.

Кто-нибудь может мне помочь? Это будет высоко оценено. Спасибо.

1 Ответ

0 голосов
/ 19 сентября 2018

Ваш ответ на ваш вопрос.

Вы пробовали:

where datediff(ms, cardnumberofpreviousevent, cardnumberofnextevent) > 200

Если это не сработает, пожалуйста, включите весь ваш запрос, тогда я посоветую, как его изменить...

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