1

複数のテーブル (4 つの INNER JOINS と OUTER LEFT JOIN) を結合するレガシー データベースを使用しています。このため、テーブルを結合する必要があるため、データを統合するのは非常に困難です。私はここまで来ました:

+---------------------------------------------------------------------------+
| EmployeeName | HireDate | Title | Mandatory30 | Mandatory90 | MandatoryPA |
+---------------------------------------------------------------------------+
| Stewart, P.  | 1/1/01   | CO    | 1/1/02      | NULL        | NULL        |
| Stewart, P.  | 1/1/01   | CO    | NULL        | 1/2/12      | NULL        |
| Frakes, J.   | 5/5/05   | XO    | 5/5/05      | NULL        | NULL        |
| Frakes, J.   | 5/5/05   | XO    | NULL        | 5/6/05      | NULL        |
+---------------------------------------------------------------------------+

これを次のようなものに統合するにはどうすればよいですか?

+---------------------------------------------------------------------------+
| EmployeeName | HireDate | Title | Mandatory30 | Mandatory90 | MandatoryPA |
+---------------------------------------------------------------------------+
| Stewart, P.  | 1/1/01   | CO    | 1/1/02      | 1/2/12      | NULL        |
| Frakes, J.   | 5/5/05   | XO    | 5/5/05      | 5/6/05      | NULL        |
+---------------------------------------------------------------------------+

これらの MandatoryN フィールドは実際には 5 つありますが、ソリューションに大きな違いがないことを願っています。

4

1 に答える 1

2

次のようなことを試してください:

SELECT EMPLOYEENAME, 
       HIREDATE, 
       TITLE, 
       Max(MANDATORY30) AS Mandatory30, 
       Max(MANDATORY90) AS Mandatory90, 
       Max(MANDATORYPA) AS MandatoryPA 
  FROM TABLE 
 GROUP BY EMPLOYEENAME, 
          HIREDATE, 
          TITLE 

必要な数のフィールドを追加できます。

于 2012-10-18T14:39:54.350 に答える