1

我们如何在不使用 mysql 中的“LEFT JOIN”或“RIGHT JOIN”的情况下从多个表中检索数据?或者是否可以使用 PHP/Mysql?

在某些情况下,我可以检索数据。例如当我们使用“两个表”或没有复杂的“WHERE”条件时。

但是当我使用 5,6,7----15 表时,我不可能检索数据。

请任何人帮助我。谢谢提前。

4

4 回答 4

1
  • 在第一张桌子上进行搜索,
  • 在第二张桌子上做一个SELECT * FROM table_2 WHERE table_2.fk_table_1 IN ($pks_from_table_one)

继续...但这意味着您将进行n查询,n往返于数据库-我听说有些公司禁止使用JOINs,有时确实更好-但我还没有这样做,也不推荐它要么。

于 2012-05-08T11:18:17.033 回答
1

假设你有食物和人。你想得到人们喜欢的食物。

食物:id,food_name

人:id,name,food_id

这里的food_id 是指foods 表中的id 字段。

只需这样做: SELECT people.name,food.food_name FROM people,foods WHERE people.food_id=foods.id

于 2012-05-08T11:18:48.523 回答
0

您可以通过在不使用任何 JOIN 语句的情况下添加子查询来实现这一点,在我给您的示例中,三个表用于提取作为我们客户的用户并且他们的安装量小于或等于 999,检查一下。

Select TUsers.names TCustomers.names 
FROM TUsers, TCustomers
Where TUsers.id = TCustomer.id AND TCustomers.id IN
(Select TCustomer.id
FROM TCustomer
WHERE TCustomer.amount >= 999)

评价是否有帮助:)

于 2012-05-08T11:31:09.943 回答
0

您可以使用“别名”而不是“加入”。

假设你有 4 张桌子。

句法:

Select * from Table1 A, Table2 B, Table3 C, Table4 D
where A.id= B.id and A.city=C.city and B.subject=D.subject
于 2012-05-08T11:40:14.057 回答