sql >> データベース >  >> RDS >> Oracle

問題:SUMクエリから異なる結果を取得する

    これを行う場合:

    select * from table1 t1, table2 t2
    

    実際には両方のテーブルを相互結合しているため、デカルト積が生成されます(t1のすべての行がt2のすべての行と結合されます)。

    おそらくJOIN条件がありません:

    select sum(t1.total_amount), sum(t2.total_amount)
    from t1 join t2 on t1.[???] = t2.[???]
    

    編集:

    あなたのコメントに基づくと、これら2つの別々のクエリの和集合が必要なようですselect't1'、sum(total_amount)from t1unionselect't2'、sum(total_amount)from t2

    これにより、合計が列ではなく2行で表示されますが、これが最も簡単な方法です。



    1. SQLWHEREステートメント

    2. MySQL:別の列の値に基づく列の合計

    3. エラー:クライアントはサーバーから要求された認証プロトコルをサポートしていません。 MySQLクライアントのアップグレードを検討してください

    4. MSSQL CTEクエリをMySQLに変換する方法は?