sql - 在两个表之间执行高级查询时遇到问题
问题描述
我有以下表格:
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”不明确
我应该得到的是这样的表:
解决方案
将引用表的名称添加到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
推荐阅读
- javascript - 当我单击它们时,如何使用 Javascript 使圆圈改变颜色?另外,如果所有圆圈都是红色的,如何使文本出现?我
- serilog - 检测损坏的日志接收器的最佳实践
- javascript - 如何使用 joi 设置正确的模式和验证?
- c++ - 如何创建一个将学生姓名与其分数相匹配的数组?
- python - 如何将 'features="html.parser"' 添加到 BeautifulSoup 构造函数
- reactjs - 将使用 create react app 创建的 react 应用程序移动到另一台计算机
- php - 如何在html表格中显示选择框?
- java - 缓存其他实体映射的关系
- node.js - 使用 SQS 私有端点批量发送消息
- flask - 烧瓶中的 sqlalchemy.exc.OperationalError