2017-04-30 16 views
1

tblSalarytblDailyExpensesという2つのテーブルがあります。 tblSalaryには、PaydAmountという名前の列があり、従業員一人当たりの給与額を維持しています。 tblDailyExpensesには、Amountという列があり、請求書ごとの支払額が保持されます。テーブルからSUM(列)を返し、別のテーブルからSUM(列)を返します

1か月間に支払った総給与(PaydAmount)と総支払額(Amount)を返したいとします。

私はこのクエリを試してみました

SELECT 
(
    (SELECT SUM(PaydAmount) FROM tblSalary WHERE tblSalary.Month=4) AS PaydSalary, 
    (SELECT SUM(Amount) FROM tblDailyExpenses WHERE tblDailyExpenses.Month=4) AS PaydExpenses 
) 

私は、以下に示すように、データグリッドビューでそれを返したいSQLServerのコンパクト版 使用しています:

#| Type   | Amount 
------------------------- 
1| Daily Expenses | 1200 
------------------------- 
2| Salary Paid | 7800 
+0

SELECT 'Daily Expenses' AS Type, SUM(PaydAmount) AS Amount FROM tblSalary WHERE tblSalary.Month=4 UNION SELECT 'Salary Paid' AS Type, SUM(Amount) AS Amount FROM tblDailyExpenses WHERE tblDailyExpenses.Month=4 

これは、あなたは下のあなたのデータグリッドビューで探しているものを得なければならない:あなたはこのような何かを行うことができます。あなたのテーブルには、参加するために使用できるプライマリ/外部キーがありますか? –

+0

残念ながら、 – Kamiran

+0

これらは2つの異なるテーブルで、それらの間の結合はありません。あなたがやっていることは、実行できる最良のものだと思います! – asmgx

答えて

1

を私が実際に考えますここではUNIONを使用する方がよいでしょう。あなたには、いくつかの方法で、2つのテーブルを結合することができればそれはおそらくきれいになり

#| Type   | Amount 
------------------------- 
1| Daily Expenses | 1200 
------------------------- 
2| Salary Paid | 7800 
+0

Timothy Gさん、ありがとうございました。 – Kamiran

関連する問題