調查表: 在此處輸入影像描述
問題表: 在此處輸入影像描述
我的sql查詢:
SELECT s.id, q.question FROM questions q 加入調查 s ON q.surveyId = s.id;
我的結果:
[
{
"id": 5,
"question": "Which industry are you working at?"
},
{
"id": 5,
"question": "What is your company's highest annual revenue?"
},
{
"id": 5,
"question": "How long has your company been operated? updated"
}
]
但我想要這個輸出:
[
{
"id": 5,
"questions": [
"Which industry are you working at?",
"What is your company's highest annual revenue?",
"How long has your company been operated?"
]
}
]
在此處輸入影像描述
uj5u.com熱心網友回復:
你想要的是一個GROUP BY
SELECT
s.id,
JSON_ARRAYAGG(q.question)
FROM
questions q
JOIN
surveys s ON q.surveyId = s.id;
GROUP BY
s.id
這可能會非常接近您想要的,但是您需要 MySQL 8.0.14 或更高版本。看看JSON_ARRAYAGG()。可以使用其他聚合函式,但是您需要對結果做一些作業。
雖然這GROUP BY是必不可少的。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/474798.html
標籤:mysql
