2014-10-31 68 views
-1

我想为两个表做一个计数,然后做一个减号,所以结果应该是零。你能给我提供正确的语法吗?在此先感谢我使用SQL服务器,并有源表在oracle和目标teradata。 目前我使用的语法如下:我想运行,除了查询行数

SELECT COUNT (*) FROM Table 1.[BATCH] except SELECT count (*) FROM table 2; 
+0

见[链接]( http://stackoverflow.com/a/9627155/812933),该解决方案允许您从sys。*模式生成查询。通过生成查询,您可以在结果中包含表名。我现在无法提供更多建议,因为我不完全清楚你想要完成什么。 – Griffin 2014-11-03 15:23:54

回答

0

你可以运行你除了查询作为子查询

SELECT Count(*) 
FROM (SELECT * 
     FROM Table1 
     EXCEPT 
     SELECT * 
     FROM Table2) T 
+0

感谢您的回复.syntax工作是否有可能显示表名 – user3803261 2014-10-31 18:03:27

+0

@ user3803261,你是指table1 count,table2 count和minus count? – radar 2014-10-31 18:05:17

+0

我在400张桌子上工作,我想要的结果应该像表格1 表3 表格10 0 – user3803261 2014-10-31 18:13:17

0

只需要做两子查询和相减:

SELECT (SELECT COUNT (*) FROM Table1.[BATCH]) - (SELECT count (*) FROM table2);