INSERT INTO table1
(`col1`, `col2`, `col3`, `col4`)
VALUES
('val1', 'val2', 'val3', 'val4')
ON DUPLICATE KEY UPDATE
`col2`='val2',
`col3`='val3', [...]
我修正了你的报价和标记。
编辑:
在PHP中:
$result = mysql_query("
INSERT INTO table1
(col1, col2, col3, col4)
VALUES
('" . $val1 . "', '" . $val2 . "', '" . $val3 . "', '" . $val4 . "')
ON DUPLICATE KEY UPDATE
col2='" . $val2 . "',
col3='" . $val3 . "',
col4='" . $val4 . "'"
);
请注意,值被单引号包围。如果值是数字类型(INT,FLOAT等),则可以删除这些引号。只要您不使用像count,type或table这样的列名,这些列名称就可以使用。
在PHP示例中,字符串连接用于清楚地分离变量。