INSERT INTO tblprofile (fldDate,fldemployeeno,fldLName,fldFName,fldMI,fldEmployeeName,
fldShiftCode,fldProjectGroup,fldTask,fldSuperior,fldPosition)
SELECT now(),tblprofile.fldemployeeno,tblprofile.fldlname,tblprofile.fldfname,tblprofile.fldmi,tblprofile.fldemployeename,
tblprofile.fldshiftcode,tblprofile.fldprojectgroup,tblprofile.fldtask,tblprofile.fldsuperior,tblprofile.fldposition
FROM tblprofile
WHERE tblprofile.flddate = (SELECT MAX(flddate) FROM tblprofile p
WHERE p.fldemployeeno IN ('EMP0001','EMP0002','EMP0003','EMP0004','EMP0005'))
AND tblprofile.fldemployeeno IN
('EMP0001','EMP0002','EMP0003','EMP0004','EMP0005');
Я хочу, чтобы скопировать весь текущий профиль всех сотрудников в списке («EMP0001», «EMP0002», «EMP0003», «EMP0004», «EMP0005») и, кажется, в моем запросе он вставляет только одну (1) строку.INSERT..SELECT в MySQL
Короче говоря, я хочу попытаться скопировать весь текущий профиль сотрудника из tblprofile всего за одно исполнение? Может ли кто-нибудь помочь мне сделать это так.
Сравнение 'flddate' - оно соответствует наибольшему значению, связанному с этими сотрудниками, но только одно из них имеет это значение ... –
tblprofile.flddate = (SELECT MAX (flddate) ... он может возвращаться только одна из пяти из них ... – KoolKabin
он должен выполнить эту работу, вы уверены, что выберите возврат более одной строки? –