0
我有三個表。 我需要將接近最大數量的人員插入人員培訓表。人員培訓表具有所需的最大人數。插入最大行數到另一個表查詢
所以,比如我有30人,並在需要的量是像27,27人應該插入
同樣,如果需要的人的數量是像15和15已經分配,我不的人的訓練表不需要插入任何東西。
可以這樣來完成
Person
Pk personId
firstName
lastName
Person_Training
PK FK personId
PK FK trainingId
signed
Training
T trainingId
Location
personsNeeded
date
我都試過,但無濟於事
INSERT INTO Person_Training(personId,trainingId)
SELECT personId , trainingId
FROM Person , Training
WHERE Training.date = '9-10-2013'
Having COUNT(Person.personId) < Training.personsNeeded
Person.personsNeeded是不正確的。 PersonNeeded列在Training表中。應該Training.personsNeeded – 2013-04-11 20:24:58
是的,它是一個錯字,但它仍然無法正常工作 – Marc 2013-04-11 20:26:21
[不使用'HAVING'的項目應該是在'WHERE'條款。(HTTPS://dev.mysql。 com/doc/refman/5.5/en/select.html) – peterm 2013-04-11 20:34:57