これが遠隔で正しいかどうかはわかりません。フィールドが現在存在する場合はデータベースを更新したい場合はクラスがあり、存在しない場合は挿入します。合併症は私が3つのテーブル(set_colors、school_art、baseimage)を結合していることです。PHP MYSQL UPDATE(存在する場合)またはINSERT(存在しない場合)?
助けが本当に素晴らしいです。ここで
は私が持っているものです。
public function set_layer_colors($value) {
global $db;
$result_array = mysql_query("
IF EXISTS(SELECT * FROM set_colors WHERE school_art_id = '{$value}')
UPDATE 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' ORDER BY school_art.id
ELSE
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' ORDER BY school_art.id
");
return $result_array;
}事前に
感謝。
もっと正確にするために、主キーの表示は必要ありません。したがって、フィールド1がキーの場合、 ...... 重複キー更新時 field2 = 'value2'、field3 = 'value3'、...(フィールド2で始まる) – giacoder