我有3张桌子:
1. Boy (id, Name, Address)
2. Girl (id, Name, Address)
3. Couples (Boy_id, Girl_id)
表男孩和女孩有一个学校所有男孩和女孩的名字和个人详细信息。
现在第三张表是那所学校的夫妻名单,其中男孩和女孩的名字来自男孩和女孩。
我想在输出中得到名字的夫妻名单,而不是ids。
Output (Boy.Name, Girl.Name)
我尝试过使用以下查询,但它给了我一个非常大的输出:
SELECT
Boy.Name, Girl.Name
FROM
Boy, Girl, Couples
WHERE
Boy.id = Couples.Boy_id AND Girl.id = Couples.Girl_id
任何人都可以在此查询中指出错误并提供正确的错误吗?
答案 0 :(得分:1)
SELECT b.name, g.name FROM Couples c
INNER JOIN Boy b ON c.Boy_id=b.id
INNER JOIN Girl g ON c.Girl_id=g.id;
答案 1 :(得分:0)
在这种情况下,您必须使用JOIN
来获取数据。
SELECT b.name, g.name
FROM Couples c
LEFT JOIN Boy b ON (b.id = c.Boy_id)
LEFT JOIN Girl g ON (g.id = c.Girl_id)