1
A
回答
3
PostgreSQL有一個ARRAY_AGG
功能,將做串聯爲您服務。例如
SELECT Users.ID,
ARRAY_AGG(COALESCE(Name || ' : ' || Value, '')) AS Settings
FROM Users
LEFT JOIN Settings
ON Users.ID = Settings.User_ID
GROUP BY Users.ID
你的表結構有點含糊所以上面是基於我對SQL Fiddle
1
假設你在user_id列一個指標,你可以做這樣的事情:
select u.*, s.*
from Users u
inner join Settings s on (u.id = s.user_id);
1
下面的查詢應該做你想要什麼,如果我很好的理解...
SELECT Users.*, Settings.*
FROM Users
JOIN Settings ON Settings.user_id = Users.id
1
嘗試GROUP_CONCAT
像這樣在mysql?
SELECT u.id, GROUP_CONCAT(s.id)
FROM Users u
INNER JOIN Settings s ON u.id = s.user_id
GROUP BY u.id;
編輯:
PostgreSQL的版本:
SELECT u.id, STRING_AGG(s.id)
FROM Users AS u
INNER JOIN Settings AS s ON u.id = s.user_id
GROUP BY u.id;
+2
PostgreSQL沒有'group_concat'功能。等價的PostgreSQL函數是'string_agg' –
相關問題
- 1. LEFT JOIN返回空結果集
- 2. 訪問SQL LEFT JOIN不返回結果
- 3. SQL LEFT JOIN問題 - 錯誤結果
- 4. 篩選LEFT JOIN結果
- 5. MySQL LEFT JOIN重複結果
- 6. Mixing LEFT JOIN結果MySQL Doctrine
- 7. MYSQL LEFT JOIN結果不給
- 8. MYSQL LEFT JOIN結果與表?
- 9. 有關SQL Server LEFT JOIN和集團通過
- 10. SQL計數+ LEFT JOIN +集團由...缺少的行
- 11. SQL Server LEFT JOIN
- 12. 結合INNER JOIN和LEFT JOIN
- 13. SQL Server 2005 LEFT JOIN?
- 14. SQL LEFT JOIN分配?
- 15. SQL請求LEFT JOIN
- 16. sql confusion LEFT JOIN = BETWEEN
- 17. SQL LEFT JOIN問題
- 18. SQL LEFT JOIN幫助
- 19. LEFT JOIN SQL查詢
- 20. LEFT JOIN返回結果爲未接通
- 21. LEFT JOIN和重複的結果
- 22. LEFT JOIN拉動只有一個結果
- 23. Mysql查詢LEFT JOIN意外結果
- 24. MySQL LEFT JOIN返回重複結果
- 25. LEFT JOIN導致重複的結果
- 26. 的MySQL LEFT JOIN沒有結果
- 27. Oracle- SQL:結合LEFT和INNER JOIN
- 28. SQL JOIN結果集爲單列
- 29. LEFT OUTER JOIN MySQL查詢返回空結果集
- 30. 從兩個表和LEFT JOIN結果中選擇子集
這工作,但我想要做的是爲每個用戶返回單行其設置分組創建的模式在結果中的'設置'下。 –
那麼,你有更多與一個用戶相關的設置嗎? – aleroot