初学者。我想加入两个驻留在两个不同数据库中的表。 让我们说:
id|coupon|created_at
a_database表名是:优惠券
和列是:id|phone|coupon_id|created_at
b_database表名是:partner_company_clients
和列是:SELECT *
FROM b_database.partner_company_clients pcc
INNER JOIN (SELECT id, coupon from a_database.coupons) mac on
mac.id=pcc.coupon_id
WHERE pcc.partner_company_id=1
AND pcc.deleted_at IS NOT NULL;
查询是:
SELECT id, phone
FROM b_database.partner_company_clients pcc
INNER JOIN (SELECT id, coupon from a_database.coupons) mac on
mac.id=pcc.coupon_id
WHERE pcc.partner_company_id=1
AND pcc.deleted_at IS NOT NULL;
这完全没问题。但我不想从b_database.partner_company_clients表中提取所有内容。只有电话号码栏。 如果我删除*并指定列名称则会引发错误。我不能说出原因。
选择查询变为:
{{1}}
错误:
错误:#1052 - 列' id'在字段列表中是不明确的
答案 0 :(得分:2)
您的查询涉及来自内部查询的2个ID列和来自https://
的第2个ID列,因此使用link = location.host;
if (link == "www.puslapioguru.eu") {
它不清楚您想要哪个ID列,因此请在列名称之前使用别名或使用列
partner_company_clients
或
select id