Таблица следующая:
CREATE TABLE UserLog(uid TEXT, clicks INT, lang TEXT)
Где uid
поле должно быть уникальным.
Вот некоторые примеры данных:
| uid | clicks | lang |
----------------------------------------
| "898187354" | 4 | "ru" |
| "898187354" | 4 | "ru" |
| "123456789" | 1 | <null> |
| "123456789" | 10 | "en" |
| "140922382" | 13 | <null> |
Как видите, у меня есть несколько строк, в которых поле uid
теперь дублируется. Я хотел бы, чтобы эти строки были объединены следующим образом:
clicks
поля добавляются, а lang
поля обновляются, если их предыдущее значение было null
.
Для данных, показанных выше, это будет выглядеть примерно так:
| uid | clicks | lang |
---------------------------------------
| "898187354" | 8 | "ru" |
| "123456789" | 11 | "en" |
| "140922382" | 13 | <null> |
Кажется, я могу найти много способов, чтобы просто удалить дубликаты данных, что я не обязательно хочу делать. Я не уверен, как я могу ввести логику в операторы SQL, которая делает это.