Jump to content

mysql ON DUPLICATE KEY


timmyd

Recommended Posts

 

if i want to INSERT unless it already exists than i want to update

 

for this INSERT ON DUPLICATE can be used

 

 

INSERT INTO table (a,b,c) VALUES (1,2,3)

  ON DUPLICATE KEY UPDATE c=c+1;

 

but what if i don't know the KEY which

is in my opinion in most cases the isue since it start off

with and INSERT, can is still use this function differently

 

for example:

INSERT INTO table (a,b,c) VALUES (1,2,3)

  ON DUPLICATE b=2 AND a=1 UPDATE c=c+1;

 

or something like this?

 

 

Link to comment
https://forums.phpfreaks.com/topic/106021-mysql-on-duplicate-key/
Share on other sites

if you doing it in php its simple to do in your processing

<?php
$q = "Select id from `table` where this=that limit 1";
$r = mysql_query($q) or die(mysql_error()."<Br /><Br />".$q);
if(mysql_num_rows($r) >0){
$row = mysql_fetch_array($r);
$q = "Update `table` SET this=that where ID = '".$row[0]."'";
}
else{
$q = "INSERT INTO `table` (FIELDS) VALUES()";
}
$r = mysql_query($q) or die(mysql_error()."<Br /><br />".$q);
?>

 

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.