插入:是否有速记可以插入重复值



我有一个以下插入查询,我想知道是否可以将两个列与相同的值结合在一起?是的,我必须完全使用其中两个进行以后的更改。

insert into `products`
set
`name` = 'y',
`time` = 'x',
`time2` = 'x';

逻辑上思考,伪代码time, time2 = 'x'应该以某种方式工作,但事实并非如此。谢谢。

您使用的语法不是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;

当然,在这种情况下,这不会保存任何打字。

no,您必须为每列分开指定一个值。

我可以为您的情况提供的唯一建议是编写触发器,将time列的值复制到time2。但是,除非您经常这样做,否则为这种情况写一个触发因素可能是不值得的。

最新更新