我有一个mysql数据库,有两个表A和B.表A有一个出现在第1列中的每个值,但表B有多个出现的每个值。事情是这样的:如何做一个两个表sql select
表A
alpha zeta
+-------------+
| abc | blah |
+-------------+
表B
alpha beta
+----------------+
| abc | blah-1 |
| abc | blah-2 |
| abc | blah-3 |
| abc | blah-4 |
| abc | blah-5 |
+----------------+
我需要的是一个查询,其中,如果有两个字母列的匹配(A.alpha = B. alpha)两行的所有值都返回结果中,例如然而,如果至少存在一个如上所述的匹配,但是表B中的'abc'行比表A中的多,则结果行应该包含每个'abc'的数据,排在表B和含有表A.单“ABC”比赛
因此,对于上述结果的两个表行是这样的:
A.alpha A.zeta B.alpha B.zeta
+---------------------------------+
| abc | blah | abc | blah-1 |
| abc | blah | abc | blah-2 |
| abc | blah | abc | blah-3 |
| abc | blah | abc | blah-4 |
| abc | blah | abc | blah-5 |
+---------------------------------+
当然ABC和不只有alpha列中的值。
我花了很多时间试图弄清楚这一点,并希望得到任何帮助。
您花时间编写/花式格式化此问题的时间量,我敢打赌,如果您在Google上花费了1/10的时间,您会得到问题的答案。 –
大部分时间(大约2小时)我花在Google和Mysql文档站点上,试图找到答案。如果这还不够,我向你道歉。 –