1

友達の皆さん、私はしばらく前に他の誰かによって作成されたクエリを持っています. 選択に Alarmtzu を追加し、さらに 2 つの結合を追加する必要があります。(下の 2 番目の sql を参照してください) クエリが非常に複雑であるため、これを SQL 構文に適合させる正しい方法を見つけるのに苦労しています。

これは非常に古いデータベースであるため、db スケジュールも利用できません。

SELECT r.refnam, 
       t.tstring,
       rc.cnt namecounter
FROM refdev r
INNER JOIN (SELECT refnam, 
                   COUNT(*) cnt
              FROM refdev rc
          GROUP BY refnam
           ) rc 
        ON rc.refnam = r.refnam
LEFT OUTER JOIN texte t
             ON r.sigtnr = t.textnr
WHERE rc.cnt = 3
ORDER BY r.refnam

SELECT d.alarmzu
FROM devtzu d, OUTER refdev_DEF RD
WHERE D.zustnr = R.zustnr
AND D.dvtypnr = RD.dvtypnr AND R.refnam = RD.refnam
4

1 に答える 1

0

データベーススキーマがないため、正しいかどうかはわかりません。しかし、私がテーブルを見ている方法は、それが解決策になる可能性があります。私が間違っている場合は修正してください。

SELECT r.refnam, 
       t.tstring,
       rc.cnt namecounter,
       d.alarmzu
FROM refdev r
INNER JOIN (SELECT refnam, 
                   COUNT(*) cnt
              FROM refdev rc
          GROUP BY refnam
           ) rc 
        ON rc.refnam = r.refnam
LEFT OUTER JOIN texte t
             ON r.sigtnr = t.textnr
JOIN devtzu d ON d.zustnr = r.zustnr
LEFT OUTER JOIN refdev_DEF RD ON d.dvtypnr = RD.dvtypnr
WHERE r.refnam = RD.refnam
AND rc.cnt = 3
ORDER BY r.refnam
于 2013-10-29T12:49:03.923 に答える