と の両方を含む 1 つのテーブルがoperators
ありoperatorgroups
ます。オペレーターは、リンク テーブルを介して「オペレーター グループ」にリンクされます。ここで、「operatorgroup」ごとに、それにリンクされているオペレーターを選択したいと思います。
動的である必要があるため、新しい「operatorgroup」が作成されたときにクエリを調整する必要はありません。
私が今行っているのは、次のクエリを繰り返してオペレーターの名前と「operatorgroup」名をリストすることですが、「operatorgroup」を追加するたびにクエリを書き直す必要があります。すべての異なる「operatorgroups」に対して同じクエリを作成するにはどうすればよいですか
SELECT Distinct A.[ref_dynanaam], A.[naam]
FROM [dbo].[actiedoor] A
LEFT JOIN [dbo].[actiedoorlink] B
ON B.[actiedoorid]=A.[unid]
OR B.[actiedoorgroepid] = A.[unid]
WHERE B.[actiedoorgroepid] ='unid' AND status >='1'
order by A.[naam] Desc
これは私に与えます
ref_Dynanaam Naam
Makelaars Makelaars Eyk
、Johan van
Hoetmer、JanR
Rooijen、Manon van
コーチのみが 2 回表示されることに注意してください。すべての 'operatorgroups' (それぞれの個別の b.actiedoorgroepid について) の上記のリスト
を
お願い
し
ますポイント
= 上記のクエリの結果
別の編集:
つまり、私はさらに一歩進んでいます。
次のクエリを実行すると、必要なものが得られます。
SELECT Distinct A.[ref_dynanaam], A.[naam], B.[actiedoorgroepid]
FROM [dbo].[actiedoor] A
LEFT JOIN [dbo].[actiedoorlink] B
ON B.[actiedoorid]=A.[unid]
OR B.[actiedoorgroepid] = A.[unid]
WHERE (B.[actiedoorgroepid]
IN (Select DISTINCT B.[actiedoorgroepid]from actiedoorlink as B
WHERE B.[actiedoorgroepid] = B.[actiedoorgroepid]) AND A.[status] >='1')
GROUP BY B.[actiedoorgroepid], A.[naam], A.[ref_dynanaam]
これは私に与えます:
ref_Dynanaam naam actiedoorgroepid
Hoetmer、1 月 4e0001
Leurink、Rob 4e0001 Rooijen
、
Manon van
4e0001
Soodoo
、
Adjai
4e0001
ここで、結果セットの各行に対して、別のサブクエリを実行する必要があります。
助言がありますか?