gpt4 book ai didi

php - 查询中存在不带 LIMIT 的 LEFT JOIN

转载 作者:行者123 更新时间:2023-11-29 11:39:59 25 4
gpt4 key购买 nike

我有以下表格:

民意调查:

id | question   | votes
1 | Your name? | 2

poll_answers:

id | id_poll | answer
1 | 1 | John
2 | 1 | Jorge
3 | 1 | Charlie

我想要执行 SELECT 来返回 poll 数据和带有 id_pollpoll_answers 数据对应于 poll 表上的 id

所以,我做到了:

SELECT question, votes, answer
FROM poll
LEFT JOIN poll_answers
ON poll.id = id_poll
WHERE poll.id = '1'
LIMIT 1

预期的输出将返回poll数据和poll_answers表上的三个答案,但是,输出是:

array(1) { [0]=> array(3) { ["question"]=> string(10) "Your name?" ["votes"]=> string(1) "2" ["answer"]=> string(5) "Charlie" } }

我想要什么:

array(1) { [0]=> array(3) { ["question"]=> string(10) "Your name?" ["votes"]=> string(1) "2" ["answer"]=> string(7) "Charlie" ["answer"]=> string(5) "Jorge" ["answer"]=> string(4) "John" } }

如何执行此操作,在主查询上使用 LIMIT,但在 LEFT JOIN 上不使用 LIMIT

最佳答案

我认为你想要聚合:

SELECT p.question, p.votes, GROUP_CONCAT(pa.answer) as answer
FROM poll p LEFT JOIN
poll_answers pa
ON p.id = pa.id_poll
WHERE p.id = 1
GROUP BY p.id;

关于php - 查询中存在不带 LIMIT 的 LEFT JOIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35963130/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com