необходимо вставить запись для столбца, если существует запись обновления для другого столбца в Cassandra - PullRequest
0 голосов
/ 01 мая 2020

У меня есть таблица, аналогичная приведенной ниже, где имя является первичным ключом

name    pay creation date   update date
mike    1000    3/1/2020    3/1/2020

Мне нужно вставить несколько записей в таблицу, и если запись уже существует, мне нужно обновить строку. Задача - создать дату. Дата создания не должна обновляться, она просто должна быть вставлена. я использую простой запрос на обновление, такой как

обновить имя_таблицы set pay = 2000, дата создания = дата sys, дата обновления = sysdate, где name = 'mike';

1 Ответ

1 голос
/ 02 мая 2020

В Cassandra нет разницы между INSERT и UPDATE (если вы не используете легкие транзакции) - все это UPSERT. Это означает, что если вы делаете INSERT и строка существует, то данные будут обновляться, а если вы делаете UPDATE, а строка не существует, она будет создана. Итак, для вашей проблемы - вы можете просто выполнить INSERT, не беспокоясь о проверке существования строки и выполнении UPDATE вместо INSERT.

...