我有一个跟随INSERT查询,我想知道是否可以组合两个具有相同值的列? 是的,我必须使用它们中的两个以便将来改变。
insert into `products`
set
`name` = 'y',
`time` = 'x',
`time2` = 'x';
从逻辑上思考,伪代码time, time2 = 'x'
应该以某种方式工作,但事实并非如此。
感谢。
答案 0 :(得分:0)
您使用的语法不是insert
的标准语法。我相信它是MySQL的特殊语法。
以下是一种方法:
insert into `products`(name, time, time2)
select 'y', 'x', 'x';
如果您在MySQL中执行此操作并输入此内容,则可以执行以下操作:
insert into `products`(name, time, time2)
select 'y', val, val
from (select 'x' as val) t;
当然,在这种情况下,这不会保存任何输入。
答案 1 :(得分:0)
不,您必须为每列单独指定一个值。
我可以为您的案例提供的唯一建议是编写触发器,将time
列的值复制到time2
。但是,除非你经常这样做,否则为这种情况写一个触发器可能是不值得的。