2010-07-30 106 views
3

如何比较2个表格中的2个字段,找到匹配并使用它? 例如:比较2个表格中的2个字段并提取数据

表1:数据1(id_data1,姓名,地址,电话,账号) 表2:数据2(id_data2,名2)

现在

在PHP中: 如果(name2.table2在名称匹配名称.table1){给我的地址,电话,账号}

+0

请一个活生生的例子。 – 2010-07-30 22:54:29

+0

这是我现实生活中的例子,和我一样(table1,table2) – Bowr 2010-07-30 22:57:03

+0

你应该把你的表称为更具描述性的东西 - table1和table2是不好的选择! – 2010-07-31 08:23:21

回答

1

我想你想使用JOINs

SELECT data FROM table1 INNER JOIN table2 ON table1.id=table2.id 

有不同类型的连接的,使用哪一种取决于什么 你需要。 这里有一个关于visualizing不同类型JOIN的问题。

编辑:我相信你正在寻找的东西是这样的:

SELECT table1.name, phone, other_info_here 
FROM table1 AS t1 RIGHT JOIN table2 AS t2 ON t1.name=t2.name 
WHERE t1.name IS NOT NULL 
+0

这不起作用,它总是需要id = 1 – Bowr 2010-07-30 23:27:42

+0

我不确定我是否理解你的问题。你可以在任何领域做一个JOIN,它不一定是ID。 – NullUserException 2010-07-30 23:31:54

+0

不能正常工作: $ result = mysql_query(“SELECT * FROM table1 INNER JOIN table2 ON table1.name = table2.name2”) 因为它总是获取最后一个记录ID的地址,电话号码 – Bowr 2010-07-30 23:42:51