【发布时间】:2026-01-25 09:20:08
【问题描述】:
问:如果我有两个表连接在一起,我想从第一个表中获取(*),我的意思是第一个表的所有字段。
我应该在查询中写下第一个表的所有字段名称吗?或者有什么方法可以从第一个表中选择 *。
【问题讨论】:
问:如果我有两个表连接在一起,我想从第一个表中获取(*),我的意思是第一个表的所有字段。
我应该在查询中写下第一个表的所有字段名称吗?或者有什么方法可以从第一个表中选择 *。
【问题讨论】:
您不应该列出所有字段,请参见示例:
SELECT DISTINCT t1.*
from T1
join t2 on condition
【讨论】:
DISTINCT关键字。
first_table.* 应该可以解决问题。
【讨论】:
听起来更像是semi join。考虑重写例如
SELECT DISTINCT T1.*
FROM T1 JOIN T2 ON T1.id = T2.id;
可以改写为
SELECT *
FROM T1
WHERE id IN (SELECT id FROM T2);
【讨论】: