Vous cherchez à mettre à jour une table MySQL si des champs spécifiques existent, ou à insérer s'ils n'existent pas. Ce scénario implique de joindre trois tables : set_colors, school_art et baseimage.
Pour obtenir le résultat souhaité, considérez le code suivant :
public function set_layer_colors($value) { global $db; $result_array = mysql_query(" INSERT INTO set_colors (school_art_id, baseimage_id, sub_folder, layer) SELECT school_art.id, baseimage.id, baseimage.sub_folder, baseimage.layer FROM school_art JOIN baseimage ON baseimage.base_folder = school_art.series_code WHERE baseimage.image_type = 'B' ON DUPLICATE KEY UPDATE sub_folder = VALUES(sub_folder), layer = VALUES(layer); "); return $result_array; }
Ce code mis à jour utilise l'INSERT ... ON Instruction DUPLICATE KEY UPDATE dans MySQL. Il effectue les actions suivantes :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!