Учитывая увеличивающиеся значения идентификатора и созданную дату, создайте оператор SQL, чтобы определить, не совпадают ли какие-либо даты с идентификатором в оракуле

Учитывая таблицу, как показано ниже: созданный - TIMESTAMP (6), а ID - NUMBER (20,0)

| ID | CREATED                    | ...
| 1  | 2019-11-01 14:19:28.611000 | ...
| 2  | 2019-11-01 14:19:28.680000 | ...

Определите все строки, в которых CREATED даты не соответствуют возрастающим значениям идентификатора.
Если значения упорядочены по идентификатору, любое CREATED < предыдущее СОЗДАННОЕ значение.

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

В качестве вывода мне нужен ID/СОЗДАН строк, которые не соответствуют шагу.

что вы хотите в качестве вывода, пожалуйста, укажите это в описании

Zaynul Abadin Tuhin 30.05.2019 09:30
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
0
1
51
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

кажется, вам нужна аналитическая функция lead() для сравнения строки следующего уровня с текущей, и если она больше текущей, то она придет к вам на вывод

with cte as
(
select id,CREATED,lead(CREATED) over(order by id) as NR
from t
) select id,created from cte where CREATED>NR

Используя ROW_NUMBER(), вы можете генерировать номера заказов по ID и CREATED, а затем сопоставлять их друг с другом:

select *
  from (select t.*,
               row_number() over(order by id) as id_order,
               row_number() over(order by created, id) as created_order
          from t)
 where id_order <> created_order

Для created_order я сортирую как по created, так и по id на тот случай, если created содержит повторяющиеся значения.

Этот запрос вернет все затронутые строки. Например, для таких данных:

| ID | CREATED                    | ...
| 1  | 2019-11-01 14:19:28.611000 | ...
| 2  | 2019-11-01 14:19:28.680000 | ...
| 3  | 2019-11-01 14:19:28.612000 | ...
| 4  | 2019-11-01 14:19:28.613000 | ...
| 5  | 2019-11-01 14:19:28.681000 | ...
| 6  | 2019-11-01 14:19:28.681000 | ...

запрос вернет строки 2, 3 и 4.

Другие вопросы по теме