繁体   English   中英

在php / mysql表中使用多个连接作为对象或类似对象

[英]use in php/mysql table multiple join as object or something similar

在我的mysql数据库中,我有一个“ 4级父表”,当我在php中使用它们时,我不想每次多重连接时都写... 示例

select ... FROM tableA 
INNER JOIN tableB ON (tableA.id = tableB.idA) INNER 
JOIN tableC ON (tableB.id = tableC.idB)...

考虑使用存储过程作为带变量查询的简写。

https://dev.mysql.com/doc/refman/5.0/zh-CN/create-procedure.html

使用视图的好处是可以充分利用WHERE过滤器。

查询视图时,优化器可能会决定执行

select * from (select ... from ...) where col=value

而在使用存储过程时,

select ... from ... where col=value

性能差异可能很大。

当我在php中使用它们时,我不想每次多重连接都写。

考虑使用下面的查询创建一个VIEW然后在PHP代码中使用该视图

create view vw_multilevelquery as
select ... FROM tableA 
INNER JOIN tableB ON (tableA.id = tableB.idA) 
INNER JOIN tableC ON (tableB.id = tableC.idB)...

在您的PHP代码中,只需对创建的视图执行SELECT ,例如

select * from vw_multilevelquery;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM