我需要JOIN
2个表格(比如User
& Order
表),以便在我的网络应用中报告模块。
问题是:
User
表格位于不同的服务器&不同
来自Order
表的DBMS 。从技术上讲,它是一个不同的系统,因此User
表位于SQL Server DB上,同时Order
表位于MySQL DB上。
我无法使用SQL Server的链接服务器,因为我的公司政策不允许这样做。所以,我直接使用SQL代码来JOIN
。他们希望我使用Web服务而不是链接服务器。
来自这些表的JOIN
操作的结果具有大量行(可能超过10,000行,因为数据旨在报告)。所以,我认为使用Web Service映射它们是一件可怕的事情。
所以我想出了这个:
我收集了来自不同模型的2个查询结果并将其与我的应用程序代码连接起来(我使用PHP和CodeIgniter):
// First result
$userData = $this->userModel->getAllUser();
// Second result
$orderData = $this->orderModel->getAllOrder();
$userData
包含具有以下列的所有用户实体:
[UserId, Username, Address, PhoneNumber, etc..]
$orderData
包含所有包含以下列的订单实体:
[OrderId, UserId, Date, etc..]
但是可以在PHP / CodeIgniter中加入这两个查询结果吗?
关于大量数据的性能如何?
我应该按照建议使用Web服务还是有另一种方法来实现这一目标?
提前致谢:)
答案 0 :(得分:0)
要考虑的一些事情:
JOIN
真的那么糟糕吗?它不是UNION
,您希望数据相关。 我建议您限制数据返回,SELECT
仅限实际需要的字段,制作新的报表模型以避免弄乱通用模型并使用原始SQL执行此操作。