是否可以在mysql spaning不同的表中进行交叉表连接?在不同的数据库中。
这在MSSQL中似乎很容易实现,并且大大加快了数据传输速度?
mysql怎么样,你需要使用强大的IDE来实现这个目标吗?或者你必须写一个程序来做这样的事情吗?
更新tblUser SET tblUser.ReceiveInfo = old_database.dbo.contact.third_party_info_yn FROM tblUser内部连接old_database.dbo.contact ON old_database.dbo.contact.id = tblUser.oldid
答案 0 :(得分:3)
当然,非常容易。使用数据库名称作为表名称的前缀,就像您显示的那样。我们定期进行跨数据库连接。例如:
从newusers1.users中选择COUNT(*) 加入newusers2.users
与在同一数据库中同时存在两个表相比,它肯定不会加速数据传输。
现在,如果您的表位于不同的数据库服务器上,答案是否定的。例如,如果您的数据库太大而需要对表进行分片。事情变得有点凌乱。但鉴于您似乎对MS SQL解决方案感到满意,这似乎不适用于此。
答案 1 :(得分:1)
在MySQL中,您可以进行跨数据库连接,并通过FEDERATED引擎进行跨服务器连接。
答案 2 :(得分:0)
MySQL实际上并不关心这些表是否在同一个“数据库”中,它只是表的逻辑集合,以方便管理,权限等。
所以你可以像在同一个人之间那样轻松地加入他们之间(参见ChrisInEdmonton的回答)