sql - 在一列中插入多个值
问题描述
我有一个关于 SQL 的问题。我在 SQL 中创建了一个表,其中只有一列包含两个人的姓名(比如 John 和 Matt)。后来我用 ALTER TABLE 在表中添加了一个新列。此列将包含这些人的姓氏。
我的问题是,如果 mmy 表已经包含几个人,是否有一个命令可以一次输入所有人的姓氏,而不是为每个人编写一个命令,如下所示:
INSERT INTO table (Surname) VALUE (John's surname)
和
INSERT INTO table (Surname) VALUE (Matt's surname)
?
提前致谢
PD 我试过类似的东西: UPDATE foo set Surname=("Parker","Walker") where Name =("John","Matt") 但不起作用
解决方案
你想要一个update
. 像这样的东西:
update t
set surname = 'John'' surname'
where firstname = 'John';
您可以为每个名称单独执行此操作。或者case
对多个表达式使用一个表达式:
UPDATE foo
SET Surname = (CASE WHEN Name = 'John' THEN 'Parker'
WHEN Name = 'Matt' THEN 'Walker'
END)
WHERE Name IN ('John', 'Matt');
推荐阅读
- flutter - 如何在 Flutter 行中溢出文本小部件列表
- python - PyTorch张量的零对角线?
- javascript - 使用计划字符串开始索引和结束索引查找 html 字符串索引
- scrapy - 在脚本中使用 scrapy 并传递参数
- javascript - 如何让函数在返回之前完成一个 for 循环
- javascript - 使用 get() 从 Javascript 中的 Google Firebase 检索唯一键?
- python - 使用 conda-build 从相同的源代码构建两个具有不同要求的包
- database - 使用外键创建数据库表时出现错误 #1064
- c - 如何实现一个系统调用,它可以在不进入内核日志的情况下检查自身是否已成功执行?
- excel - 收集集合中的空白控制值时过程/调用参数无效?