sql - 当一个表有多个值时如何连接两个表
问题描述
为什么这两个表不能用下面的 SQL 正确连接?
SELECT o.*
FROM opening_hours o
LEFT JOIN farms f ON o.farm_id = f.id
WHERE f.id = 69
解决方案
您的声明:
SELECT o.*
FROM opening_hours o
LEFT JOIN farms f ON o.farm_id = f.id
WHERE f.id = 69
创建一个无用的连接,它相当于:
SELECT * FROM opening_hours WHERE farm_id = 69
因为它是只从左表中选择列的左连接。
如果你想从这个连接中得到一些东西,也可以从右表中选择列,比如:
SELECT o.*, f.*
FROM opening_hours o
LEFT JOIN farms f ON o.farm_id = f.id
WHERE f.id = 69
推荐阅读
- android - 带有adjustViewBounds的ImageView在通货膨胀时不一致地显示在ConstraintLayout中
- python - Pyspark - 在 zip 文件中导入模块时出错
- java - Java 8 流 - 通过比较两个列表进行过滤
- python - 将 3D numpy 数组拆分为更小的 3D 数组
- ios - 应用程序图标上的快捷方式项不适用于 iOS 13
- javascript - 如何在呈现不同结果的forEach中修复正则表达式
- python - Django Admin - 第一行中的自定义列未正确呈现
- cucumberjs - .click 函数通过时步骤,但实际上并未单击浏览器中的元素
- vue.js - 如何禁用其他页面上的默认布局
- angular - 类型'{ new (): Location; 上不存在属性'distanceBetween' 原型:位置;}'