Mysql 从不同表的多行中选择一行中的数据

Mysql 从不同表的多行中选择一行中的数据,mysql,Mysql,早些时候,我需要使用MSSQL的帮助,但现在我必须在其他机器上使用MySQL。 我有桌子: ---------- ---------- ---------- | offers | | bids | | users | ---------- ---------- ---------- id id id .... offer_id first_name .... use

早些时候,我需要使用MSSQL的帮助,但现在我必须在其他机器上使用MySQL。 我有桌子:

----------    ----------    ----------
| offers |    |  bids  |    | users  |
----------    ----------    ----------
id            id            id
....          offer_id      first_name
....          user_id       last_name
              ....          .....
现在,我需要为每个提供id分配用户的姓氏和名字

offers.id = bids.offers_id and bids.user_id = users.id
例如:

     offers                   bids                   users
------------------    ----------------------     ----------------
|id| ...| ....|       |id| offer_id| user_id|    |id| first_name| last_name|
------------------    -----------------------     --------------------------
|1 | ...|.....|       |1 |    1    |    2   |    | 2| Peter     | Jackson  |
|2 | ...|.....|       |2 |    1    |    3   |    | 3| Adam      | Black    |
                      |3 |    1    |    6   |    | 4| Roy       | Wright   |
                      |4 |    2    |    5   |    | 5| Eva       | Cekovsky |
                      |5 |    2    |    7   |    | 6| Martin    | Tyson    |
                                                 | 7| Vera      | Vornel   |
输出应该是这样的

  offer_id                   full_name
--------------------------------------------------------------
|   1      |    Peter Jackson, Adam Black, Martin Tyson      |
--------------------------------------------------------------
|   2      |    Eva Cekowsky, Vera Vornel                    |
--------------------------------------------------------------

我可以使用
CONCAT
轻松地将姓氏与姓氏连接起来,如果每个数据都在同一个表中,我就可以这样做,但这一点我无法理解。尝试使用GROUP_CONCAT(因为MySQL中没有任何内容),但没有多大成功。

您需要先连接三个表,然后连接两列,并在
GROUP_CONCAT
中传递此表达式

SELECT  b.offer_id,
        GROUP_CONCAT(CONCAT(c.first_name, ' ', c.last_name)) as Full_name
FROM    offers a
        INNER JOIN bids b
            ON a.id = b.offer_id
        INNER JOIN users c
            ON b.user_id = c.id
GROUP   BY b.offer_id

这很快,谢谢,只是输入了一些更正。第2行:组名称(c.名,,,c.姓)作为全名。。。。第4行:删除了“出价”一词