MySql中的条件插入日期

MySql中的条件插入日期,mysql,insert,Mysql,Insert,我有两个表(employee&log\u sheet),当用户在log\u sheet中找不到记录时,我想在log\u sheet中插入今天的日期。如果有记录,它应该返回一些值 SELECT employee.id, employee.name, log_sheet.`date` FROM employee LEFT OUTER JOIN log_sheet ON employee.id = log_sheet

我有两个表(
employee
&
log\u sheet
),当用户在
log\u sheet
中找不到记录时,我想在
log\u sheet
中插入今天的日期。如果有记录,它应该返回一些值

SELECT employee.id,
       employee.name,
       log_sheet.`date`
FROM   employee
       LEFT OUTER JOIN log_sheet
                    ON employee.id = log_sheet.employee_id
WHERE  employee.name = 'admin' 

所以你想确保每个员工至少有一张记录表,对吗

像这样的方法应该会奏效:

INSERT INTO log_sheet (employee_id, date)
    SELECT id, DATE(NOW()) 
    FROM   employee
    WHERE  name = 'admin' 
      AND  id NOT IN ( SELECT DISTINCT employee_id FROM log_sheet ) 
要预览此操作,请在插入行之前添加
#

尝试下面的查询:

insert into log_sheet (date, employee_id) 
(
SELECT now(),
    employee.id
FROM employee
LEFT OUTER JOIN log_sheet ON employee.id = log_sheet.employee_id
WHERE employee.name = 'admin' AND log_sheet.`date` IS NULL
)

是否要求脚本插入或脚本选择?是否可能类似于“如果没有找到记录,则返回空值并插入今天的日期,否则返回一些值以说明数据存在”。