Mysql 如何在SQL中连接具有一对多关系的两个表?

Mysql 如何在SQL中连接具有一对多关系的两个表?,mysql,sql,ms-access,Mysql,Sql,Ms Access,我在MS access或MySQL中有这两个简单的表 我想知道客户B订购的产品是什么? 我应该编写什么SQL查询 我试过这个。。为什么错了 SELECT PRODUCT FROM table1 INNER JOIN table2 ON table1.CUST_ID=table2.CUST_ID WHERE table1.NAME='B' ; 这可能是一个非常简单的问题,但请回答…我想学习,非常感谢..请使用下面的查询 select * from table1 t1 inner join tab

我在MS access或MySQL中有这两个简单的表

我想知道客户B订购的产品是什么? 我应该编写什么SQL查询

我试过这个。。为什么错了

SELECT PRODUCT FROM table1
INNER JOIN table2
ON table1.CUST_ID=table2.CUST_ID
WHERE table1.NAME='B' ;

这可能是一个非常简单的问题,但请回答…我想学习,非常感谢..

请使用下面的查询

select * from table1 t1
inner join table2 t2
on (t1.cust_id = t2.cust_id)
where
t1.name = 'B'
您可以使用exists

输出:

| product |
| ------- |
| K       |
| M       |

如果您希望学习,请向我们展示您已经尝试过的代码,我们会告诉您错误所在。好的,那么当您运行该代码时会发生什么?错误?还是意外的结果?看起来它会起作用。你为什么问Access和MySQL?你到底在用哪一个?有时可能会有语法上的差异,这会导致在每种情况下都有不同的答案。这无疑会帮助OP和其他刚刚学习SQL的人解释为什么您认为这是解决方案。您对原始代码做了哪些更改,更重要的是,更改的目的是什么?这将是一个更有用的答案:-当然。谢谢,那么你会考虑编辑你的答案吗?这就是我评论的重点。毫无疑问,这将有助于OP和其他刚刚学习SQL的人解释为什么您认为这是解决方案。您对原始代码做了哪些更改,更重要的是,更改的目的是什么?这将是一个更有用的答案:-然而,我认为在这个简单的情况下,不应该有必要存在。你为什么认为加入不起作用?@ADyson。1可能更有效。2不产生重复项。“存在”是语言的一个基本部分,所以似乎没有必要解释它,正如我建议解释“存在”在哪里一样。只要指出这是一个合适的解决方案就足够了。@GordonLinoff好的,我接受第1点和第2点,但是从这个问题上可以很清楚地看出OP和其他搜索这类东西的人很可能是初学者,我仍然认为它至少值得对它的功能做一个基本的解释。
| product |
| ------- |
| K       |
| M       |