创建一张新表(sql练习)

现有一张用户信息表,其中包含多年来在平台注册过的用户信息,随着牛客平台的不断壮大,用户量飞速增长,为了高效地为高活跃用户提供服务,现需要将部分用户拆分出一张新表。

原来的用户信息表:

FiledTypeNullKeyDefaultExtraComment
idint(11)NOPRI(NULL)auto_increment自增ID
uidint(11)NOUNI(NULL)用户ID
nick_namevarchar(64)YES(NULL)昵称
achievementint(11)YES0成就值
levelint(11)YES(NULL)用户等级
jobvarchar(32)YES(NULL)职业方向
register_timedatetimeYESCURRENT_TIMESTAMP注册时间

作为数据分析师,请创建一张优质用户信息表user_info_vip,表结构和用户信息表一致。

你应该返回的输出如下表格所示,请写出建表语句将表格中所有限制和说明记录到表里。

FiledTypeNullKeyDefaultExtraComment
idint(11)NOPRIauto_increment自增ID
uidint(11)NOUNI用户ID
nick_namevarchar(64)YES昵称
achievementint(11)YES0成就值
levelint(11)YES用户等级
jobvarchar(32)YES职业方向
register_timedatetimeYESCURRENT_TIMESTAMP注册时间

备注:
1.后台会通过 SHOW FULL FIELDS FROM user_info_vip 语句,来对比输出结果

2.如果该表已经被其他分析师创建过了,正常返回即可

示例1

输入:

drop table if EXISTS user_info_vip;

输出:

id|int|None|NO|PRI|None|auto_increment|select,insert,update,references|自增ID
uid|int|None|NO|UNI|None||select,insert,update,references|用户ID
nick_name|varchar(64)|utf8_general_ci|YES||None||select,insert,update,references|昵称
achievement|int|None|YES||0||select,insert,update,references|成就值
level|int|None|YES||None||select,insert,update,references|用户等级
job|varchar(32)|utf8_general_ci|YES||None||select,insert,update,references|职业方向
register_time|datetime|None|YES||CURRENT_TIMESTAMP|DEFAULT_GENERATED|select,insert,update,references|注册时间

本题涉及sql表的创建,这里主要要分清数据类型。

primary key表示主键,主键不会重复。

auto_increment表示自增。

comment用于添加注释。

default value用于设置默认值。

unique用于设置唯一性约束。

create table if not exists user_info_vip(
    `id` int(11) not null primary key auto_increment comment '自增ID',
    `uid` int(11) not null unique comment '用户ID',
    `nick_name` varchar(64) comment '昵称',
    `achievement` int(11) default 0 comment '成就值',
    `level` int(11) comment '用户等级',
    `job` varchar(32) comment '职业方向',
    `register_time` datetime default current_timestamp comment '注册时间'
)CHARACTER SET utf8 COLLATE utf8_general_ci
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值