2017-08-24 3 views
1
SELECT 
    (select Email from Contact where AccountId = Account.Id), 
    Id, 
    BillingCity, 
    BillingCountry, 
    BillingPostalCode, 
    BillingState, 
    BillingStreet, 
    Name, 
    Phone 
FROM Account 
where 
LastModifiedDate < #[flowVars['timestamp']] 

問題は、私は現在の反復の同上に基づいてサブクエリに存在する電子メールを取得することはできませんよです。外部クエリの値が内部クエリにでき、使用できませんここ

+0

できないとはどういう意味ですか?あなたは何をしようとしているのですか? – sagi

+0

Contact.AccountId = Account.Idの条件に基づいて電子メールを出力したい場合は、出力の各行に対して – Gopi

+0

ContactテーブルをAccountテーブルに参加させてから使用します。 – Madhukar

答えて

0

私はどのようにクエリを実行しているのかわかりませんが、どのように結果にアクセスしているのですか?結果が動的に得られない場所で実行している場合は、予想される名前で列にアクセスしようとします。つまり、「電子メール」列を何とか取得しようとすると、クエリに小さな問題を修正する必要があります。

あなたがそうのようなあなたのサブクエリemailのような意味のある名前を付けることがASオペレータを追加する必要があります。

... 
(select Email from Contact where AccountId = Account.Id) as email, 
... 

は、実施例のために、ここでフィドルを参照してください:db-fiddle

0

あなたはスカラサブを取り除くことができます代わりにCONTACTテーブルに結合を入れてください。以下は、CONTACTテーブルがオプションの関係であることを前提としています。

SELECT 
    con.email, 
    acct.Id, 
    acct.BillingCity, 
    acct.BillingCountry, 
    acct.BillingPostalCode, 
    acct.BillingState, 
    acct.BillingStreet, 
    acct.Name, 
    acct.Phone 
FROM account acct 
    LEFT OUTER JOIN 
    contact con ON con.account_id = acct.account_id 
WHERE acct.LastModifiedDate < #[flowVars['timestamp']] 
関連する問題