将相同的固定值插入多行

The*_*hop 33 mysql sql sql-update sql-insert

我有一个带有列的表,让我们调用table_column当前null表的所​​有行.我想将值"test"插入到所有行的列中.有人可以给我这个SQL吗?

我已经尝试了, INSERT INTO table (table_column) VALUES ("test");但只填充了最后一行.如何一次完成所有行?

Bra*_*tie 74

你正在寻找UPDATE而不是插入.

UPDATE mytable
SET    table_column = 'test';
Run Code Online (Sandbox Code Playgroud)

UPDATE将更改现有行的值(并且可以包含WHERE以使其仅影响特定行),而INSERT则添加新行(这使得它看起来只更改了最后一行,但实际上是添加了一个新行具有该值的行).


DVK*_*DVK 21

这是因为在关系数据库术语中,您想要做的事情不是称为插入,而是更新 - 您正在将现有行的字段从一个值(在您的情况下为NULL)更新为"test"

UPDATE your_table SET table_column = "test" 
WHERE table_column = NULL 
Run Code Online (Sandbox Code Playgroud)

如果要更新100%的行,则不需要第二行.

  • 我给你+1只是因为你是唯一一个发布答案和理由的人.没有人在SO上似乎不再发布推理或引用,他们希望首先参加平局. (2认同)