2012-04-07 12 views
1

私は2つのテーブルの従業員と給与テーブルを持っていますが、給与はSalary_employeeという名前のフィールドに従業員の給与を構成します。 2番目は余分な費用です。余分な費用は、電気代、オフィスメンテナンスのような会社の余分な費用に関連する記録で、extra_expenseという名前のフィールドに含まれています。単一のレポート内の2つの異なるテーブルからデータを取得

(これらの2つのテーブルの間には関係がありません)。

最後に、私は両方のテーブルをグループ化する必要があるため、レポートの会社のすべての経費をレポートに表示したかっただけです。ここで使用するものは何ですか?

答えて

2

二つのテーブルの間に関係がない場合は、費用がに結ぶことになっている場所を知らないため、これは実際に動作することはできません。可能であれば、データベースを再設計する必要があります。これは、説明に基づいて不可能と聞こえるためです。

UPDATE

OKは、あなたのスクリーンショットの表情で、私はこのデータベースは唯一の企業情報を保存することを推測していますか?そして複数ではない?

これが正しい場合、あなたがしたいのは、データをまとめて1つのフローレポートにまとめれば、私は確かにUNIONを提案するでしょう。 JOINはあなたが探しているフローを与えません。 A UNIONは、2つの出力を1つにまとめるだけです...あなたが求めていると思いますか?

SELECT ext_amount AS amount, ext_date AS date_of_trans 
FROM extra_expenses 
UNION 
SELECT sal_cash AS amount, sal_dateof_payment AS date_of_trans 
FROM employee_salary 
+0

ちょっとちょっと私はそれのスクリーンショットをアップロードしました、ありがとうございます – San

+0

@サンは私の答えを更新しました。私の前提が正しければ、UNIONはうまくいくはずです。私は企業識別子を必要とすると思われる複数の企業情報を保持するデータベースに慣れています –

+0

これは私のために働いてくれました。 – San

1

あなたがグループまたは参加を使用する必要はありませんように聞こえます。スクリプト内で両方のテーブルを個別に照会し、構造に応じて両方のテーブルを処理してレポートを生成するだけです。

結合と結合は、共通のものに関する異なる情報を別々のテーブルから抽出するために使用できる関数です。例えば。個人情報が1つのテーブルに保存されているが、そのプロファイル情報が別のテーブルにあるユーザーがいる場合。プライベートの詳細情報とプロファイル情報の両方を表示する場合は、共通のユーザー名で2つのテーブルを結合して、1つのクエリでユーザーのすべての情報を結合して収集することができます。

関連する問題