2017-05-27 107 views
1

如何使用CONCAT( “操作名称”, '只是空间',(MySQL查询从另一个表中选择)?如何使用CONCAT( “字符串”, '' 触发器中的MySQL,MySQL查询)

试过这样:

INSERT INTO log 
set operation = "create", 
detail= Concat("Creating new Data", ' ', (SELECT name from employees where employees.id = new.employ_id)), 
time = NOW() 

,但我得到了详细的第三个参数的错误...

,但如果我想是这样的:

INSERT INTO log 
set operation = "create", 
detail= SELECT name from employees where employees.id = new.employ_id, 
time = NOW() 

员工姓名可以显示,如果我在我的表格中创建新数据

如何解决这一问题?帮助请

感谢

+0

你应该指定错误是什么。第二个“插入”应该不起作用。 –

回答

0

我想你应该写的逻辑是这样的:

INSERT INTO log(operation, detail, time) 
    SELECT 'create', 
      concat('Creating new Data', ' ', e.name), 
      NOW() 
    FROM employees e 
    WHERE e.id = new.employ_id; 

我不知道这是否解决您的错误 - 你没有指定它是什么。然而,这是编写查询的更自然的方式。

+0

感谢您的回答!我认为我必须对此做更多的练习:) – DarkCode999