Чтобы удалить повторяющиеся записи на основе кода сотрудника и даты в MySQL, вы можете использовать следующие методы:
Метод 1: использование временной таблицы и DISTINCT
CREATE TABLE temp_table AS
SELECT DISTINCT * FROM your_table
WHERE date = '2023-09-27 13:05:07';
DELETE FROM your_table
WHERE date = '2023-09-27 13:05:07';
INSERT INTO your_table
SELECT * FROM temp_table;
DROP TABLE temp_table;
Метод 2: использование самостоятельного соединения
DELETE t1
FROM your_table t1
JOIN your_table t2 ON t1.employee_code = t2.employee_code
WHERE t1.date = '2023-09-27 13:05:07'
AND t1.date = t2.date
AND t1.id > t2.id;
Метод 3: использование подзапроса
DELETE FROM your_table
WHERE (employee_code, date) IN (
SELECT employee_code, date
FROM your_table
WHERE date = '2023-09-27 13:05:07'
GROUP BY employee_code, date
HAVING COUNT(*) > 1
);
Обратите внимание, что в предоставленных запросах SQL следует заменить «your_table» фактическим именем вашей таблицы. Кроме того, обязательно создайте резервную копию своих данных перед выполнением любых операций по удалению.