问:如果我有两张表加在一起,我想从第一张表中得到(*)
,我的意思是第一张表的所有字段。有没有在查询中写入所有字段名称的情况下选择第一个表的方法?
我应该写查询中第一个表的所有字段名称吗?或者有什么方法可以从第一个表中选择*。
问:如果我有两张表加在一起,我想从第一张表中得到(*)
,我的意思是第一张表的所有字段。有没有在查询中写入所有字段名称的情况下选择第一个表的方法?
我应该写查询中第一个表的所有字段名称吗?或者有什么方法可以从第一个表中选择*。
你不应该列出所有的领域,见例如:
SELECT DISTINCT t1.*
from T1
join t2 on condition
first_table.*
应该做的伎俩。
听起来更像是semi join。考虑重写例如
SELECT DISTINCT T1.*
FROM T1 JOIN T2 ON T1.id = T2.id;
可以考虑添加`DISTINCT`关键字被重新写为
SELECT *
FROM T1
WHERE id IN (SELECT id FROM T2);
。 – onedaywhen 2012-01-16 09:36:18
@onedaywhen yep,thanx。当然最好使用EXISTS而不是JOIN – 2012-01-16 09:51:34