Advertisement
iEfimoff

Untitled

Jan 20th, 2020
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 1.44 KB | None | 0 0
  1. WITH t_fraud_list_found_duplicates AS (
  2.   SELECT id
  3.     FROM t_fraud_list
  4.    WHERE ROWID NOT IN (
  5.      SELECT MIN(ROWID)
  6.        FROM t_fraud_list
  7.       GROUP BY listid, VALUE
  8.     )
  9. );
  10. DELETE
  11.   FROM t_fraud_list_item_parent
  12.  WHERE list_item_id IN (SELECT id FROM t_fraud_list_found_duplicates)
  13.     OR parent_id IN (SELECT id FROM t_fraud_list_found_duplicates);
  14.  
  15. DELETE
  16.   FROM t_fraud_list_parameters
  17.  WHERE list_item_id IN (SELECT id FROM t_fraud_list_found_duplicates);
  18.  
  19. -- FIXME: удалишь дубликаты два раза... похоже этот запрос лишний...
  20. /*
  21. delete
  22.   from t_fraud_list
  23.  where rowid not in (
  24.    select min(rowid)
  25.      from t_fraud_list
  26.     group by listid, value
  27.   );
  28. */
  29. DELETE
  30.   FROM t_fraud_list_item_parent
  31.  WHERE list_item_id IN (SELECT id FROM t_fraud_list_found_duplicates)
  32.     OR parent_id IN (SELECT id FROM t_fraud_list_found_duplicates);
  33.  
  34. DELETE
  35.   FROM t_fraud_list_parameters
  36.  WHERE list_item_id IN (SELECT id FROM t_fraud_list_found_duplicates);
  37.  
  38. -- FIXME: еще раз удалить, может скопировано не так?
  39. /*
  40. delete
  41.   from t_fraud_list
  42.  where rowid not in (
  43.    select min(rowid)
  44.      from t_fraud_list
  45.     group by listid, value
  46.   );
  47. */
  48. -- NOTE: переписал запрос который выше, плиз проверь его еще раз...
  49. DELETE
  50.   FROM t_fraud_list
  51.  WHERE id IN (SELECT id FROM t_fraud_list_found_duplicates);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement