SQL入门实战 day4

这篇博客介绍了SQL的基础操作,包括获取查询的执行计划、表的创建、字段拼接、主键设置、默认值设定、唯一索引创建以及视图的建立。内容涵盖员工表、actor表以及salaries表的相关操作,通过实例讲解了SQL的常用语法和技巧。
摘要由CSDN通过智能技术生成

一、目录

题目链接:
https://www.nowcoder.com/ta/sql

二、题解

31、获取select * from employees对应的执行计划
  • 题目描述
获取select * from employees对应的执行计划
  • 代码
EXPLAIN SELECT * FROM employees
32、将employees表的所有员工的last_name和first_name拼接起来作为Name
  • 题目描述
将employees表的所有员工的last_name和first_name拼接起来作为Name,中间以一个空格区分
(注:该数据库系统是sqllite,字符串拼接为 || 符号,不支持concat函数)
CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL,
`birth_date` date NOT NULL,
`first_name` varchar(14) NOT NULL,
`last_name` varchar(16) NOT NULL,
`gender` char(1) NOT NULL,
`hire_date` date NOT NULL,
PRIMARY KEY (`emp_no`));
  • 思路
    了解字符拼接符号。
  • 代码
select (last_name || " " || first_name) as Name from employees
  • 参考:
    1.不同数据库连接字符串的方法不完全相同,MySQL、SQL Server、Oracle等数据库支持CONCAT方法,
    SELECT CONCAT_WS(space(1),last_name,first_name) AS Name FROM employees;
    2.concat、concat_ws、group_concat函数用法
33、获取select * from employees对应的执行计划
  • 题目描述
创建一个actor表,包含如下列信息(注:sqlite获取系统默认时间是datetime('now','localtime'))

列表	    类型	    是否为NULL	含义
actor_id	smallint(5)	not null	主键id
first_name	varchar(45)	not null	名字
last_name	varchar(45)	not null	姓氏
last_update	timestamp	not null	最后更新时间,默认是系统的当前时间
  • 思路
    本题关键点是actor_id的主键设置与last_update的默认获取系统时间:
    1.设置主键 primary key
    2.在last_update末尾加上DEFAULT是为该字段设置默认值,且默认值为(datetime(‘now’,‘localtime’)),即获得系统时间,注意最外层的括号不可省略

  • 代码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值