MySQL Forums
Forum List  »  Perl

Compare 2 tables
Posted by: Mark Li
Date: June 24, 2009 05:11AM

Hi everybody,
I want to compare 2 tables contents. My tables are:
Table1
------------------
ID || Value
------------------
1 || forum_list1
2 || Message_list1
3 || Search1
4 || Search5
5 || Search11
6 || Log_out
7 || LOG

Table2
--------------------------------------------
ID || Value1 || Value2
---------------------------------------------
1 || rd_forum_list1_no ||
2 || wr_Message_list1_yes ||
3 || rd_Search1_no ||
4 || rd_Search5_no ||
5 || rd_Search11_no ||
6 || rd_Log_out_no ||
7 || rd_LOG_no ||
8 || wr_forum_list1_no ||
9 || rd_Message_list1_yes ||
10 || 123_Search1_456 ||
11 || 123_Search11_456 ||

I want to compare both the tables content and if the contents are similar then place the ID of table no. one in Table2.Value2 but discard all the rows with "wr_". Also note that in case of Search1 and Search11, I want the comaprison very exact as

Table2
--------------------------------------------
ID || Value1 || Value2
---------------------------------------------
1 || rd_forum_list1_no || 1
2 || wr_Message_list1_yes ||
3 || rd_Search1_no || 3
4 || rd_Search5_no || 4
5 || rd_Search11_no || 5
6 || rd_Log_out_no || 6
7 || rd_LOG_no || 7
8 || wr_forum_list1_no ||
9 || rd_Message_list1_yes || 2
10 || 123_Search1_456 || 3
11 || 123_Search11_456 || 5

I tried implementing this by following code:
$query = "SELECT Table1.value, Table2.value1 FROM Table1,Table2 WHERE Table2.value1 LIKE CONCAT('%',Table1.value,'%')";
$result =mysql_query($query) or die(mysql_error());
while(@row = mysql_ftech_array($result))
{
$updatetable2= UPDATE Table2.value2 SET Table2.value2 =(@Table1.value);
}

But its not working.. please help..
thanks in advance

Options: ReplyQuote


Subject
Written By
Posted
Compare 2 tables
June 24, 2009 05:11AM
June 25, 2009 09:08PM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.