Снежинка, как удалить сглаженные записи? - PullRequest
1 голос
/ 24 февраля 2020

Я не могу удалить свои записи, используя этот синтаксис:

DELETE FROM "DB_NAME"."SCHEMA_NAME"."TABLE_NAME",LATERAL FLATTEN(INPUT => src:Records) rec WHERE Records.value:requestParameters:key is null;

Не могли бы вы помочь мне с хорошим синтаксисом? Источник таблицы - это таблица вариантов:

{
"Records": [
  {
  "additionalEventData": {
    "AuthenticationMethod": "xxxxxxxxxxxxxx",
    "CipherSuite": "xxxxxxxxxxxxxxxxxx",
    "SignatureVersion": "xxxxxxxxxxxx",
    "bytesTransferredIn": xxxxxxxxxxxx,
    ...

1 Ответ

1 голос
/ 24 февраля 2020

Попробуйте этот шаблон:

delete from table_name a
using table_name b, lateral flatten(input => b.src:Records, recursive=>true) c 
where a.src=b.src and c.key='key' and c.value::text is null

Хитрость заключается в предложении USING с самообъединением. (Рекурсивная опция не обязательна, просто обновите предложение where соответствующим образом.)

...