簡體   English   中英

如何在沒有1:1關系的情況下從兩個關系表中獲取數據? - MySQL

[英]How do you get data from two relational tables without a 1:1 relationship? - MySQL

我有兩個關系表, coredomains 它們都與core.iddomains.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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM