2つの違いのテーブルを作成するSQLサーバーを使用してテーブルを作成しようとしています。私は他の記事では見つかっていない。この程度トリッキーな部分は、一つのテーブルには以下のような単一の「アカウント」のデータであるということです。キーフィールドの1から3の関係のテーブル間の相違
TABLE A
Account Security ID Sec Name Shares
------- ----------- --------- ------
1 Sec1 Security1 20000
1 Sec2 Security2 50000
1 Sec3 Security3 10000
1 Sec4 Security4 35000
と、私はこれを比較したいデータがアカウント」のグループです「(この例では3):
TABLE B
Parent_acct Account Security ID Sec Name Shares
----------- ------- ----------- --------- ------
Clone 200 Sec1 Security1 15000
Clone 200 Sec3 Security3 22000
Clone 200 Sec4 Security4 8000
Clone 300 Sec1 Security1 11000
Clone 300 Sec3 Security3 8500
Clone 300 Sec4 Security4 11200
Clone 400 Sec1 Security1 16000
Clone 400 Sec2 Security2 7800
Clone 400 Sec3 Security3 3500
Iは、2つのテーブル上で与えられた、セキュリティIDの表Aに含まれる各表Bから欠落していることは、例えば
アカウント見つけるためにいくつかのSQLを必要とする、私はその下の出力が、私に紛失しているセキュリティと何がそれが欠けていない限り。
うまくいけば、それは理にかなっています。
私は必要なデータを生成するためにカーソルクエリを使用しましたが、私はCrystal Reportsに簡単に適用できるものを作成しようとしています。カーソルクエリはそのためには役に立ちません。
これをご覧いただきありがとうございます。
Output
Account Security ID Sec Name
(From B) (From A) (From A)
------- ----------- ---------
200 Sec2 Security2
300 Sec2 Security2
400 Sec4 Security4
マイクエリー、これまで:
select * FROM
(SELECT * from
(select p.acct_cd, s.ext_sec_id, s.sec_name, p.qty_sod
from csm_Security s, cs_position p
where s.sec_id = p.sec_id
and p.acct_cd = '329'
and s.sec_typ_cd in ('COM','FSTK','ADR')) A
cross join
(select distinct child_acct_cd
cs_fund_config fc
where fc.parent_acct_cd IN ('clone_as')) B) AAccounts,
(select fc.child_acct_cd, s.ext_sec_id, s.sec_name, p.qty_sod
from csm_Security s, cs_position p, cs_fund_config fc
where s.sec_id = p.sec_id
and fc.child_acct_cd = p.acct_cd
and fc.parent_acct_cd IN ('clone_as')
and s.sec_typ_cd in ('COM','FSTK','ADR')) BAccounts
where AAccounts.ext_sec_id *= BAccounts.ext_sec_id
and AAccounts.child_acct_cd *= BAccounts.child_acct_cd
サンプルデータでは、テーブルAのアカウントはすべて1に設定されていますか?エラーですか?それらは200または300または400であるべきであるように見えます。ところで、私の答えを試してください。 – daniloquio
これはエラーではありません。私はあなたがモデルアカウントのようなものだと言えると思います。アカウント1のポジションと表Bの3つのアカウントのポジションを比較します。 –
私はそれを今すぐ取得します。私は悪い仮定をしたので、私は答えを削除した。 – daniloquio