[英]How do you get data from two relational tables without a 1:1 relationship? - MySQL
我有兩個關系表, core
和domains
。 它們都與core.id
和domains.cid
。 我想形成一個可以在core
表中返回一行的查詢,以及來自domains
表的所有相關行。 目前,我運行了兩個查詢; 一個從core
表中獲取所需的單行,另一個從domains
表中獲取所有相關的行,但我正在嘗試優化我的查詢。
我嘗試過類似的東西:
SELECT a.domain,b.* FROM domains a WHERE a.cid=1 INNER JOIN core b ON a.cid=b.id
現在這個工作正常,除了它返回所有冗余數據的多行。 例如,如果core
中的一行在domains
有5個相關行,則返回5行,並且b.*
在每個結果中顯然相同。 有沒有辦法返回一行,所有a.domain
返回單行?
SELECT
GROUP_CONCAT(d.domain) AS domains,
c.*
FROM core c
JOIN domains d
ON d.cid = c.id
WHERE c.id = 1
GROUP BY c.id
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.