Qual é a maneira mais fácil de atualizar muitas linhas em uma tabela? Eu tenho um arquivo csv que se parece com isso:
|primary_key |value|
| 1 | xyz|
| 2 | abc|
| 3 | def|
...
As linhas com essas chaves primárias já existem na tabela de destino
Gostaria de atualizar a tabela de destino com esses valores. Existe sintaxe para que eu possa escrever algo como:
update mytable set value = ('xyz', 'abc', 'def') where primary key = (1,2,3);
Olhando através do MySQL Update Reference , este site ( MySQL - csv update ), SO ( update multiple rows , multiple db updates , update multiple rows ), suspeito que a resposta seja "não", mas gostaria de confirmar que isso é verdade.
Primeiro, aqui estão os dados de amostra
Aqui está a nova consulta
Aqui está a nova consulta executada
Supondo que você não queira carregar os dados do arquivo CSV em uma tabela de banco de dados e, em seguida, fazer um correlacionado
UPDATE
,então você deve ser capaz de usar um
CASE