O QUE EU TENHO
Tenho duas tabelas com a mesma estrutura. Podemos dizer que uma é a tabela principal, enquanto a outra é uma tabela lateral , o que significa que cada linha rastreia uma edição para uma linha correspondente da tabela principal. Para combinar a edição com a linha original, obviamente uso algumas teclas.
O QUE EU QUERO FAZER
Preciso de uma consulta que retorne um conjunto de resultados onde as linhas de edição substituam as originais.
Por exemplo, tenho esta linha na tabela lateral :
que corresponde, pelo ID da pessoa e pela data que são KEYs , à linha destacada na tabela principal (abaixo)
A consulta deve retornar um conjunto de quatro tuplas onde a linha 96368
é substituída pelos valores da linha de edição.
Que tipo de abordagem você sugere? No início levei em consideração um UNION, pois as duas tabelas compartilham a mesma estrutura, mas não sei como fazer as edições para mascarar as linhas originais.
Talvez eu tenha encontrado uma solução.
A ideia é construir um UNION sem algumas linhas da tabela principal.
Essas linhas são identificadas com um INNER JOIN correspondente a datas e IDs de pessoas.
Parece que funciona, mas estou aberto a melhorias, se houver.
desde já, obrigado
Se a linha correspondente na
sidetable
tabela existir, entãot2.data
(et2.idpersona
- você pode usá-la livremente) não é NULL e a coluna de saída correspondente retorna o valor desidetable
, caso contrário,t2.column
é NULL e a coluna de saída correspondente retorna o valor demaintable
.