Tendo o seguinte trecho de tabela:
CREATE TABLE `some_table` (
`exp_col_1` TINYINT(1) NOT NULL DEFAULT '0',
`mark_col_1_as_exported` TINYINT(1) DEFAULT '0',
`exp_col_2` TINYINT(1) DEFAULT '0',
`mark_col_2_as_exported` TINYINT(1) DEFAULT '0',
);
existe uma maneira de escrever uma consulta para:
- atualize a coluna
mark_col_1_as_exported
ondeexp_col_1=1
- atualize a coluna
mark_col_2_as_exported
ondeexp_col_2=1
Eu sei que posso escrever um UPDATE para cada um deles mas isso é apenas um trecho, estamos falando aqui de cerca de 20 colunas a serem atualizadas
Usar case seria uma opção:
Pode haver alguns problemas de desempenho devido ao uso do
or
operador.Observação . Por favor, use-o primeiro em um ambiente de teste
consultar exemplo