SELECT * FROM有两个不同的表

时间:2013-07-30 04:58:16

标签: php mysql sql

我一直在努力解决这个问题并尝试了几种不同的方法来组合SELECT FROM语句,但我无法让它工作在我可以调用同一数据库中两个表的字段的地方。它可以找到,如果我删除任何一个。我尝试使用UNION将它们组合在一起(不确定这是否正确),但无法使其工作。

这是我到目前为止与他们分开的内容:

$id = $_POST['id'];

$edit = $db->prepare("SELECT * FROM contacts WHERE id = (?)");
$edit->bind_param('s', $id);
$edit->execute();
$edit->bind_result($id, $firstName, $lastName, $email, $phone, $category);

$categories = $db->prepare("SELECT * FROM category");
$categories->execute();
$categories->bind_result($cateid, $setcategory);

echo $firstName;

while ($categories->fetch()) {
    echo $setcategory;
}

我是所有这一切的新手。如果有人能指出我正确的方向,我将不胜感激。谢谢!

2 个答案:

答案 0 :(得分:4)

如果两个表有一个共同的字段,那么你可以做类似的事情

"SELECT A.*, B.*
 FROM contacts AS A
 JOIN category AS B
 ON A.primary = B.foreign
 WHERE A.id = (?)"

答案 1 :(得分:2)

如果您的两个表具有公共属性,则可以使用内部联接来执行此操作

select * from tableA inner join tableB 
on tableA.commanKey =tableB.commanKey on tableA.id=?  

希望这会对你有所帮助。