2010-02-17 5 views
0
SELECT A.ID_ListGroupParIzm, A.Name, 0 AS Point 
FROM CfgListGroupParIzm A, CfgIzmeritel B 
WHERE A.ID_TypeIzmerit = B.ID_TypeIzmerit 
AND [email protected]_Izmerit AND A.ForRun=0 

UNION 

SELECT A.ID_ListGroupParIzm, (C.Name + ' ' + A.Name) AS Name, C.ID_IzmerPoint AS Point 
FROM CfgListGroupParIzm A, CfgIzmeritel B, CfgIzmerPoint C 
WHERE A.ID_TypeIzmerit = B.ID_TypeIzmerit 
AND [email protected]_Izmerit AND A.ForRun=1 
AND [email protected]_Izmerit 

EXCEPT 

SELECT ID_Group --, '' AS Name, 0 AS Point here I don't know their names and a Point :(
FROM TbUserGroup 
WHERE [email protected]_Izmerit AND 
[email protected]_User AND [email protected]_Point 

거기에 아이디어가 있었는데 - 예외를 사용하지만 그것을 위해 모든 필드를 알고 있어야합니다 (나는 단 하나만 알고), 그래서이 노조 노드에서 제외 제외 :/결합 할 생각입니다.하나 밖에 필드에 의해 노조에서 제외

만드는 방법은? 또는 몇 가지 아이디어 ... 또는 조언 ...

답변

2

당신은

SELECT * 
FROM (
      SELECT A.ID_ListGroupParIzm, 
        A.Name, 
        0 AS Point 
      FROM CfgListGroupParIzm A, 
        CfgIzmeritel B 
      WHERE A.ID_TypeIzmerit = B.ID_TypeIzmerit  
      AND  [email protected]_Izmerit 
      AND  A.ForRun=0 
      UNION 
      SELECT A.ID_ListGroupParIzm, 
        (C.Name + ' ' + A.Name) AS Name, 
        C.ID_IzmerPoint AS Point 
      FROM CfgListGroupParIzm A, 
        CfgIzmeritel B, 
        CfgIzmerPoint C 
      WHERE A.ID_TypeIzmerit = B.ID_TypeIzmerit 
      AND  [email protected]_Izmerit 
      AND  A.ForRun=1 
      AND  [email protected]_Izmerit 
     ) sub 
WHERE sub.ID_ListGroupParIzm NOT IN 
       (
        SELECT ID_Group 
        FROM TbUserGroup 
        WHERE [email protected]_Izmerit 
        AND  [email protected]_User 
        AND  [email protected]_Point 
       ) 
+0

같은 예, 작동, 다시 한 번 감사 시도해 볼 수도 있습니다 – Cynede

관련 문제