相关疑难解决方法(0)

在MySQL查询中,为什么要使用join而不是where?

似乎要组合两个或更多表,我们可以使用join或where.一个优于另一个的优点是什么?

mysql sql database

105
推荐指数
4
解决办法
5万
查看次数

跨多个服务器连接表

我想我们可以做database1.table1 join database2.table2 on等等.即在同一台服务器上的不同数据库中连接表.
是否可以跨不同的sql服务器连接表?

mysql sql join

5
推荐指数
1
解决办法
3298
查看次数

在Elixir Ecto中加入两个属于两个数据库的表

在Elixir中,使用Ecto,可以连接属于不同两个数据库的两个不同的表(在同一主机中).

有两个数据库称为cloudcloud_usage在此查询

当我执行查询时,我应该使用哪个Repo?

Billing.CloudUsage.Repo.all(query)

要么

Billing.Cloud.Repo.all(query)

    query = from cucu in "cloud_usage.cloud_usage",
        inner_join: cv in "cloud.volumes", on: cucu.usage_id == cv.id,
          where: cucu.account_id == ^account_id,
          where: cucu.usage_id == 6,
          where: like(cucu.description, ^vol_description),
          where: cucu.start_date >= ^start_datetime,
          where: cucu.start_date <= ^end_datetime,
       group_by: cucu.usage_id,
       group_by: cucu.zone_id,
         select: {cucu.usage_id, cucu.zone_id, cucu.size, sum(cucu.raw_usage)}
???result  = Billing.CloudUsage.Repo.all(query)
Run Code Online (Sandbox Code Playgroud)

当我调用该函数时,我收到了错误

** (Mariaex.Error) (1146): Table 'cloud_usage.cloud_usage.cloud_usage' doesn't exist
Run Code Online (Sandbox Code Playgroud)

我知道为什么会这样.但如果我使用Billing.Cloud.Repo.all(query),我想我几乎无法检索cloud_usage.cloud_usage表中的数据.反之亦然

参考:

MySQL - 在两个不同的数据库中的表之间连接?

elixir ecto

5
推荐指数
1
解决办法
1298
查看次数

标签 统计

mysql ×2

sql ×2

database ×1

ecto ×1

elixir ×1

join ×1