0

私は1つのテーブルを持っています - スタッフ

id | staff Name | adress
-------------------------
1 | Mr.A        | Any Address
2 | Mr. B       | Any Address

2番目のテーブル - 雇用履歴

eid | staff_id | school_id | type       | grade | date_of_appointmet
--------------------------------------------------------------------
1   | 1         | 1        |Promotion   | 17    | 2012-12-12
2   | 1         | 2        |promotion   | 18    | 2013-2-2
3   | 2         | 2        |appointment | 17    | 2013-3-3
 and so on tables moves

今の質問はそれです

  • スタッフテーブルからその人の最新の仕事を彼の詳細とともに取得したい
  • school_id 1 で働く 17 年生のスタッフの数をどうやって数えますか (staff_id 1 (mr.a) は 18 に昇格し、school_id 2 で働いていることを思い出してください)。
4

2 に答える 2

0

のようなものはどうですか

SELECT *
FROM employment_history eh1
WHERE eh1.date_of_employment = (
    SELECT max(eh2.date_of_employment)
    FROM staff s
    JOIN employment_history eh2 ON s.id = eh2.staff_id
    WHERE s.id = ?
)

を交換する?か、必要に応じて使用bind_param()してください。

于 2013-09-20T21:33:34.113 に答える