加入2个表的值

时间:2015-03-03 02:58:30

标签: php html mysql select join

我有2个表,我无法将这些表的值合并到table2中。

Table1:

id | studnum | fname | lname | mname
1  | 1001    | Mark  | Lei   | Ramos

Table2:

id | studnum | remarks

当我将值输入表2时,表1中的studnum是否也可以输入表2?

我试过了,但它没有奏效。

 $sql = "SELECT table1.studnum FROM table1, table2
         WHERE table1.studnum = table2.studnum";

这样Table2就像这个输出

 id | studnum | remarks
 1  | 1001    | good

3 个答案:

答案 0 :(得分:0)

您正在寻找的是使用JOIN声明。

如果共享密钥在他们之间是studnum,你可以

SELECT * FROM table1
JOIN table2
ON table1.studnum = table2.studnum

答案 1 :(得分:0)

尝试使用MySQL连接功能。例如:

SELECT *
FROM table1
JOIN table2
ON table1.studnum=table2.studnum;

关于联接的更多阅读:http://www.keithjbrown.co.uk/vworks/mysql/mysql_p5.php

答案 2 :(得分:0)

如果那些正是你的表,你真的不需要你要求的东西,因为它违反了规范化。

如果表1中的条目只有一个或没有备注,则表2不需要,备注应该在表1中。

如果您需要为表1中的单个条目添加多个备注,则表2中不需要stdnum。如果您在此方案中的问题是构建查询以基于stdnums获取重新映射,则可以轻松实现此目的联合。

对于记录/对象,您应该在表之间复制的唯一字段是id。你可以(并且可能应该)在效率方面进行规范化,但你的例子并非如此。