两个SQL查询之间的减法(Subtraction between two sql queries)

2019-08-20 11:51发布

我有MS SQL查询2返回一些使用COUNT函数的结果。

我可以运行第一个查询并获得的第一个结果,然后再运行另外一个得到其他结果,减并找到结果; 然而,有没有办法将所有3种功能,并获得1个整体结果

如:运行SQL1运行SQL2运行SQL3(SQL1,SQL2)....?

我想他们XXXX的功能,但没有运气。

Answer 1:

您应该能够使用子查询为:

SELECT
    (SELECT COUNT(*) FROM ... WHERE ...)
  - (SELECT COUNT(*) FROM ... WHERE ...) AS Difference

只是测试它:

Difference
-----------
45

(1 row(s) affected)


Answer 2:

SELECT (SELECT COUNT(*) FROM t1) - (SELECT COUNT(*) FROM t2)


Answer 3:

我知道这是一个老的文章,但这里是最适合我的需要另一种解决方案(上火鸟测试)

SELECT c1-c2 from (select count(*) c1 from t1), (SELECT COUNT(*) c2 from t2);


Answer 4:

SELECT(SELECT COUNT(FIRSTNAME)FROM TRMDW.EMPLOYEE1) - (SELECT COUNT(DISTINCT FIRSTNAME)FROM TRMDW.EMPLOYEE1)从双差;



Answer 5:

只要创建您的查询逻辑内联函数,并将其返回结果。 如需要参数传递。



Answer 6:

select @result = (select count(0) from table1) - (select count(0) from table2)


Answer 7:

SELECT
   t1.HowManyInTable1
  ,t2.HowManyInTable2
  ,t1.HowManyInTable1 = t2.HowManyInTable2  Table1_minus_Table2
 from (select count(*) HowManyInTable1 from Table1) t1
  cross join (select count(*) HowManyInTable2 from Table2) t2


Answer 8:

SELECT (count(*) from t1) - (count(*) from t2);

这为我工作。

此外,如果只有一个表,你也可以这样做:

SELECT (count(column1)) - count(column2)) from table; 


Answer 9:

((SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(米, '/',2), '/', - 1)从MS WHERE ms.id = t.m_id) - (SELECT COUNT(ID)FROM吨为Tr WHERE tr.m_id = t.m_id))AS剩余



文章来源: Subtraction between two sql queries