Eu criei uma tabela onde ele armazena alguns dados da loja multilíngue com essa estrutura
create table store_locator_store_lang
(
id_store int(11) unsigned not null,
lang_id int not null,
partner varchar(100) null,
address varchar(255) null,
city varchar(100) null,
occupation varchar(100) null,
primary key (id_store, id_lang)
);
id_lang can be 1 or 2
Lá eu tenho alguns dados incompletos, o que significa que existem todas as linhas, lang_id = 1
mas lang_id = 2
muitas linhas contêm valores vazios.
Gostaria de preencher as linhas vazias lang_id = 2
com dados das linhas com lang_id = 1
.
A entidade store é identificada por id_store
então o id_store
é comum para os dois idiomas da mesma loja.
Sempre há um par armazenado, mesmo que uma linha tenha colunas vazias. Não há chance de faltar uma linha paralang_id=2
É possível realizar esta tarefa com uma consulta de atualização no banco de dados ou tenho que exportar os dados, editar e reinserir?
O servidor de banco de dados é 10.1.44-MariaDB-0ubuntu0.18.04.1 Ubuntu 18.04
Aqui está um despejo de alguns dados de exemplo
INSERT INTO store_locator_store_lang (id_store, lang_id, partner, address, city, occupation) VALUES (543, 1, 'TEST', 'TEST, Τ.Κ. 52100', 'TEST', 'TEST');
INSERT INTO store_locator_store_lang (id_store, lang_id, partner, address, city, occupation) VALUES (543, 2, '', '', '', '');
Em geral (se "muitas linhas contêm valores vazios" significa "eles contêm NULL"):