首页 > 解决方案 > 在两个表之间执行高级查询时遇到问题

问题描述

我有以下表格:

1) t_products 包含一个外键 provider_id

2) 主键为provider_id的t_provider

他们要求我提供以下信息:

生成代码以获取 ID 为“45636”的提供商及其提供的产品

我的代码如下:

SELECT t_provider.name, t_provider.lastname, t_products.model, t_products.brand
FROM t_provider
  INNER JOIN t_products ON t_provider.id_provider = t_products.id_provider
WHERE provider_id = 45636

ERROR 1052 where 子句中的列“id_provider”不明确

我应该得到的是这样的表:

例子

标签: sqlmariadb

解决方案


将引用表的名称添加到provider_id

SELECT t_provider.name, t_provider.lastname, t_products.model, t_products.brand
FROM t_provider
  INNER JOIN t_products ON t_provider.id_provider = t_products.id_provider
WHERE t_provider.provider_id = 45636

推荐阅读