这句有没有更好的写法 SELECT COUNT(DISTINCT a.name)+COUNT(DISTINCT b.name) FROM t1 a,t2 b作用是求t1中不同的name的数量+t2中不同的name的数量 (即,若同一个name在两表中都出现,那么算2次) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select sum(c) from( select c=COUNT(DISTINCT name) from t1 union all select c=COUNT(DISTINCT name) from t2) T SELECT COUNT(DISTINCT a.name)+COUNT(DISTINCT b.name) FROM t1 a,t2 b应该用了Gross join,性能未必好 ----------一楼才是楼主要的答案..或另一种答案计算两个表的合起来的不同记录select count(1) from (select Name from T1union allselect Name from T2)TT select count(1) from (select Name from T1union --去掉allselect Name from T2)TT 上面的评论错了!union 与union all都是合并结果集,不过它们之间是有区别的,union会自动过滤重复的记录值,union all则不会过滤 这是为什么啊? (20分)求一个3表插入问题! 请问下有关SQL2000 SQL SERVER 2000 的SP1、SP2、SP3是一个一个的打上去,还是只用打SP3? 请问一个Sql统计数据问题 求一sql 根据日期进行记录数分组统计的问题 access是否支持多表删除? 本人在安装SQL Server时登录选项选的是'使用Windows身份验证',现在想把它改为'使用SQL Server身份验证',应如何进行设置?望高手指教! 迷茫,到底是什么数据库?数据库的作用是什么? 第 1 行: '=' 附近有语法错误。 为何在触发器中无法输出文件?困惑了好几天了,高手们帮忙想想。给各位磕头了。
(
select c=COUNT(DISTINCT name) from t1
union all
select c=COUNT(DISTINCT name) from t2
) T
应该用了Gross join,性能未必好
----------
一楼才是楼主要的答案..
或另一种答案计算两个表的合起来的不同记录
select count(1)
from (
select Name from T1
union all
select Name from T2
)TT
select count(1)
from (
select Name from T1
union --去掉all
select Name from T2
)TT
union 与union all都是合并结果集,不过它们之间是有区别的,union会自动过滤重复的记录值,union all则不会过滤