Skip to content

牛客网 SQL实战 34 批量插入数据#

目录#

1. 题目描述#

1.1. Time Limit#

C/C++ 1秒,其他语言2秒

1.2. Memory Limit#

C/C++ 32M,其他语言64M

1.3. Problem Description#

对于表actor批量插入如下数据(不能有2条insert语句哦!)

CREATE TABLEIF NOT EXISTS actor(

 actor_idsmallint(5)NOT NULL PRIMARY KEY,

 first_namevarchar(45) NOT NULL,

 last_namevarchar(45) NOT NULL,

 last_updatetimestamp NOT NULL DEFAULT (datetime('now','localtime')))

actor_id first_name last_name last_update
1 PENELOPE GUINESS 2006-02-15 12:34:33
2 NICK WAHLBERG 2006-02-15 12:34:33

1.4. Source#

牛客网 NC26156 批量插入数据

2. 题解#

根据 Mysql 8.0 官方文档VALUES 后跟的 (value_list) [, (value_list)] ... 是可以通过逗号分隔并列的。

INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
    [INTO] tbl_name
    [PARTITION (partition_name [, partition_name] ...)]
    [(col_name [, col_name] ...)]
    { {VALUES | VALUE} (value_list) [, (value_list)] ...
      |
      VALUES row_constructor_list
    }
    [AS row_alias[(col_alias [, col_alias] ...)]]
    [ON DUPLICATE KEY UPDATE assignment_list]

value:
    {expr | DEFAULT}

value_list:
    value [, value] ...

row_constructor_list:
    ROW(value_list)[, ROW(value_list)][, ...]

assignment:
    col_name = [row_alias.]value

assignment_list:
    assignment [, assignment] ...

3. 代码#

INSERT INTO actor
VALUES(1, 'PENELOPE', 'GUINESS', '2006-02-15 12:34:33'),
(2, 'NICK', 'WAHLBERG', '2006-02-15 12:34:33');

联系邮箱:curren_wong@163.com

CSDNhttps://me.csdn.net/qq_41729780

知乎https://zhuanlan.zhihu.com/c_1225417532351741952

公众号复杂网络与机器学习

欢迎关注/转载,有问题欢迎通过邮箱交流。

二维码

Back to top