繁体   English   中英

加入时选择不同的字段

[英]Select Distinct Field on Join

我根据它们共享的唯一标识符加入 MySQL 中的两个大表。 因为字段较多,所以不想在SELECT后列出所有字段。 相反,我想选择所有字段,但我不希望重复出现的字段(在本例中为共享唯一标识符)。

使用此示例查询:

SELECT *
FROM Gr3_PracMath_Jan11_D1 as a, student_list_011811 as b 
WHERE a.StudentID = b.StudentID

字段 StudentID 重复。 有没有办法防止这种情况?

我不认为有。 您可能会通过仅列出一半字段来减少工作:

SELECT a.*, b.Field1, b.Field2...

我相信如果您使用 USING 关键字进行显式连接,您将不会得到重复。

SELECT *
FROM Gr3_PracMath_Jan11_D1
LEFT JOIN student_list_011811 
USING (StudentID)

即使有很多列,也不列出所有列是不好的做法。 只要硬着头皮写下来。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM