2016-10-27 12 views
3

シネマデータベースを作成していて、挿入スクリプトの特定のポイントに固執しています。 チケットを作成していますが、私はtotalpriceが必要です。この価格は、いくつかのサブクエリを使用して検索する2つの値の合計です。ここ は、私は今、チケットテーブルに挿入するために、1つの数を作成するために一緒に2つの値を追加することにこだわって数値クエリの結果を集計する

Select toelage 
from klanttype 
where type = 
     (
     Select type 
     from klant 
     where klantnr = (
          Select klantId 
          from Verkoop 
          where verkoopId = 2512 
     ) 
     ); 

select toelage 
from zetelzone 
where zone = (
       select zone 
       from zetel 
       where zetelnr = 130 
); 

2つのquerysです。参加し、サブクエリでそれをやって

+0

テスト段階からあったセミコロンに拡張されます。それらは結果を追加しなければならない2つのクエリです – user5951209

+0

参照http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-非常にシンプルなSQLクエリ – Strawberry

答えて

1

を組み合わせて、組合と合計することができます。 これも容易に自分の結果を個々querysの両方を確認するために、複数のソース先

select sum(toelage) 
from (
    Select toelage 
    from klanttype 
    where type = 
    (
    Select type 
    from klant 
    where klantnr = (
         Select klantId 
         from Verkoop 
         where verkoopId = 2512 
    ) 
    ) 
    UNION ALL 
    select toelage 
    from zetelzone 
    where zone = (
      select zone 
      from zetel 
      where zetelnr = 130 
    ) 
); 
+0

これもうまくいった。ご協力いただきありがとうございます – user5951209

1

試してみてください。

SELECT t.toelage + (SELECT p.toelage 
        FROM zetelzone p 
        JOIN zetel pp 
        ON p.zone = pp.zone and pp.zetelnr = 130) 
FROM klanttype t 
JOIN klant s 
ON t.kantnr = s.kantid and s.verkoopId = 2512 

これらのクエリが1つのレコードを返した場合です。サブクエリがそれより多くを返す場合は、別のジョインのように別のアプローチが必要です。

+0

私はそれを少し変更しなければなりませんでしたが、クエリのロジックが問題を解決しました。あなたの助けをありがとう! – user5951209

1

あなたは、すべての労働組合を経由して、両方のクエリをまとめることができ、すべての

select sum(toelage) as toelage from (
    Select toelage 
    from klanttype 
    where type = 
      (
      Select type 
      from klant 
      where klantnr = (
           Select klantId 
           from Verkoop 
           where verkoopId = 2512 
      ) 
      ) 
    union all 
    select toelage 
    from zetelzone 
    where zone = (
        select zone 
        from zetel 
        where zetelnr = 130 
    ) 
) as allSubQuerys 
関連する問題