mysql - 将两个表连接为一对多关系

时间:2016-08-03 13:34:07

标签: php mysql join

我知道这个问题已经在这里多次提出,但毕竟我找不到我想要的答案。

我的问题是:

我有两个表,这些表的结构如下:

表1: item_id, store,title,available,shipping

表2: item_id, review_rate,user_id,review_title

这些表应该以{{1​​}}关系加入。

例如,如果这些表中的数据为:

one to many

然后结果应该是加入后的结果:

table1:

item_id      store      title    available    shipping
-------------------------------------------------------
11           glasses    ..........................
12           dresses    ..........................
.
.
.

table2:

item_id     review_rate    user_id    review_title
--------------------------------------------------
11           3              10023      good item
11           5              10024      nice item
12           1              10024      nice one
.
.
.

我尝试加入的afterJoin: item_id store title available shipping rate people_reviewed ----------------------------------------------------------------------- 11 .................................... 4 2 12 .................................... 1 1 是:

query

但这只返回一行。

1 个答案:

答案 0 :(得分:2)

您的查询缺少/* ./modules/NavLink.js */ import React from 'react' import { Link } from 'react-router' export default React.createClass({ render() { return <Link {...this.props} activeClassName="active"/> } }) /* Main use of the <NavLink/> */ <NavLink to="/locations/MA/random">Massachusetts</NavLink> 子句。没有它,您的数据库将聚合所有记录。

GROUP BY

SELECT i.*, round(AVG(r.review_rate)) as rate, count(r.user_id) as people_reviewed FROM table1 i RIGHT JOIN table2 r ON i.item_id = r.item_id GROUP BY i.item_id 指示数据库聚合每个GROUP BY