私が欲しいものを記述するのは難しいが、私は試してみる: まず、私は2つのテーブルを持っている:従業員と給料。私は、このSQLコマンドによって2つのテーブルに参加しました:どのように結果をフィルタリングする
"SELECT employee.id, employee.employee_name, employee.image, salary.year, salary.month, salary.day, salary.total_salary, salary.id, salary.created
FROM employee
JOIN salary ON salary.employee_id=employee.id"
私が挿入されたすべての値を取得するには、後に実行し、私が得た:その後
Created name year month day(working) total_salary
------------------------------------------------------------------------------
2016-12-17 20:41 A 2016 1 31 1550000
2016-12-17 21:49 A 2016 1 20 2000000
2016-12-17 22:49 A 2016 2 20 2000000
2016-12-18 22:43 B 2016 2 15 1550000
2016-12-18 23:43 B 2016 2 10 1000000
2016-12-18 23:49 B 2016 2 1 100000
を、私は、月ごとの最新の値を取得したいです私は、上記のSQLの最後に、このコマンドを追加します。
GROUP BY employee.employee_name, salary.year, salary.month"
と、この得た:
Created name year month day(working) total_salary
------------------------------------------------------------------------------
2016-12-17 20:41 A 2016 1 31 1550000
2016-12-17 22:49 A 2016 2 20 2000000
2016-12-18 22:43 B 2016 2 15 1550000
を
どのようなクエリで次の結果が返されますか?あなたのグループの前に
Created name year month day(working) total_salary
------------------------------------------------------------------------------
2016-12-17 21:49 A 2016 1 20 2000000
2016-12-17 22:49 A 2016 2 20 2000000
2016-12-18 23:49 B 2016 2 1 100000
私はちょっと混乱しています。あなたはそれらを 'month'でグループ化したいと思っていますが、あなたの望む出力には矛盾しているような同じ' month'の2つがあります。 – Mihailo
あなたは従業員のそれぞれが多くの月を持っているのを見ることができます、私はちょうど従業員の毎月を表示したいです。少し複雑に思えます:)) – trungducng
実際のテーブルを置くと、クエリをテストするほうが助かります。それがなければ、各従業員の合計を計算するサブクエリを作成し、それをメインテーブルに結合すると言うことができます。 –