2013-10-18 31 views
0

我在这里有firebird查询,我不认为这是否正确。火鸟在选择字段中的WHERE子句

SELECT 
     COUNT(STATUS) FROM(SELECT STATUS FROM T_TABLE2 WHERE STATUS = 'FAIL') AS FAIL, 
     DEVICENAME, 
     SITE_NUM, 
     COUNT(TEST_NUM) 
FROM T_TABLE2 A 
INNER JOIN T_TABLE1 B 
ON A.TBL1_ID = B.ID 
WHERE B.DEVICENAME = 'TANM1A009A_P28' 
AND A.TEST_NUM = 'T810' 
GROUP BY 
     DEVICENAME, 
     TESTER, 
     SITE_NUM 

我想算TEST_NUM的行即使它有FAIL价值,我也想算状态有FAIL值。 谢谢

+0

这里有什么问题? – user2705620

+0

是这条线是否正确? COUNT(STATUS)FROM FAIL(STATUS)FROM FAIL(STATUS)FROM(SELECT STATUS FROM STATUS ='FAIL')AS FAIL, – aiipee

+0

在firebird中不是那么熟悉,但在SQLServer中,那不正确,应该是 'COUNT(STATUS)AS FAIL FROM STATUS FROM T_TABLE2 WHERE STATUS ='FAIL')' – user2705620

回答

0

我真的不知道FireBird,但从MSSQL的角度来看,为什么你不试试?

SELECT 
     COUNT(A.STATUS) as 'FAIL', 
     B.DEVICENAME, 
     (TableofYourSitenum)SITE_NUM, -- i do no know what table this from 
     (TableofYourTestnum)COUNT(TEST_NUM) as 'TESTNUM COUNT' --and this also you need to put the table name, 
FROM T_TABLE2 A 
INNER JOIN T_TABLE1 B 
ON A.TBL1_ID = B.ID 
WHERE B.DEVICENAME = 'TANM1A009A_P28' 
AND A.TEST_NUM = 'T810' 
GROUP BY 
     A.STATUS, 
     (TableofYourTestnum)TESTNUM