0
   select
        (select sum(sal)as sal_tp, sum(local_conv) as lc_tp from budget_tp),
        (select sum(sal) from budget_fos_veri) as sal_veri,
        (select sum(sal) from budget_fos_picks)as sal_pick,
        (select sum(sal) from budget_bpo_other)as sal_bpo;

私は得る

ERROR 1241 (21000): Operand should contain 1 column(s).

要件を完了する方法はありますか?クエリは実際にはサンプルです。複数の列を持つテーブルがたくさんあります。すべてのテーブルの個々の列の合計を表示したいのですが、最初の行で一度に2つを表示しようとすると、このエラーが発生します。1つの列だけを取得しようとすると、大丈夫。

4

1 に答える 1

4

各サブクエリは1つのフィールドを返す必要があります。あなたの質問を試してください-

   select
        (select sum(sal) from budget_tp) as sal_tp,
        (select sum(local_conv) from budget_tp) as lc_tp,
        (select sum(sal) from budget_fos_veri) as sal_veri,
        (select sum(sal) from budget_fos_picks)as sal_pick,
        (select sum(sal) from budget_bpo_other)as sal_bpo;

もう1つ:

   select
        (select concat(sum(sal), ',' ,sum(local_conv)) from budget_tp) as sal_tp_and_lc_tp
        (select sum(local_conv) from budget_tp) as lc_tp,
        ...
于 2012-08-03T07:27:22.180 に答える