jiang_dr
jiang_dr
全部文章
分类
题解(78)
归档
标签
去牛客网
登录
/
注册
jiang_dr的博客
目前专注于SQL的练习
TA的专栏
78篇文章
1人订阅
SQL练习
78篇文章
821人学习
全部文章
(共58篇)
题解 | #将所有获取奖金的员工当前的薪水增加10%#
来自专栏
思路: 连接两个表,然后条件判断当前员工。 最后使用 UPDATE ... SET ... WHERE ... IN ... 来实现更改数据 但是这里需要注意的是 条件判断需要放到外层的 WHERE 语句中,否则查询出来的 emp_no 虽然可能只有一个,但在本题中一个emp_no对应多行(应...
Mysql
Sqlite
2021-10-25
1
525
题解 | #针对上面的salaries表emp_no字段创建索引idx_emp_no#
来自专栏
mysql 中使用 FORCE INDEX (indexname) sqlite 中使用 INDEXED BY indexname select * from salaries force index (idx_emp_no) where emp_no = '10005' 可以通过在查询头部添加 ...
Mysql
Sqlite
2021-10-19
1
684
题解 | #针对actor表创建视图actor_name_view#
来自专栏
本题有两种解法: 首先先介绍一下视图的语法 语法: CREATE VIEW <视图名> AS <SELECT 语句> 方法一: create view actor_name_view as select first_name as first_name_v, last_na...
Mysql
Sqlite
2021-10-19
7
577
题解 | #对first_name创建唯一索引uniq_idx_firstname#
来自专栏
两种方法 create (unique) index 索引名 on 表名(列名) -- 创建唯一索引 create unique index uniq_idx_firstname on actor(first_name); -- 创建普通索引 create index idx_lastname ...
Mysql
Sqlite
2021-10-18
1
504
题解 | #创建一个actor_name表#
来自专栏
sqlite版 create table actor_name as select first_name, last_name from actor; mysql版(as可去可不去) create table actor_name select first_name, last_name from...
Mysql
Sqlite
2021-10-18
1
467
题解 | #获取所有非manager员工当前的薪水情况#
来自专栏
本题有两种解法 方法一:inner join 思路:本题的重点在于获取非manager员工,因此我们使用inner join将employees,dept_emp,salaries表进行连接,在 where 条件中加入 e.emp_no not in (select emp_no from dept...
Mysql
Sqlite
2021-10-12
4
694
题解 | #查找在职员工自入职以来的薪水涨幅情况#
来自专栏
思路:我们使用两个表,分别保存之前的工资和当前的工资 方法一:使用两次left join 和 一次 inner join 之前的工资的条件为:salaries.from_date = employees.hire_date 当前的工资的条件为:salaries.to_date = '9999-01-...
Sqlite
2021-10-11
1
620
题解 | #查找所有员工的last_name和first_name以及对应的dept_name#
来自专栏
思路:这是一个典型的多表连接,值得注意的是未分配部门员工也需要展示,这就要考虑使用什么连接方式。这里使用两次左连接来实现。 完整代码: select e.last_name, e.first_name, d.dept_name from (employees e left join dept_emp...
Mysql
Sqlite
2021-10-09
2
655
题解 | #获取当前薪水第二多的员工的emp_no以及其对应的薪水salary#
来自专栏
思路: 我们首先通过 max() 求出第一大的薪水。 然后通过 < 去除最大的,且通过 max() 求出第二大的。 表连接,取 salary = 第二大的薪水,及对应的字段值。 完整代码: select e.emp_no, s.salary, e.last_name, e.first_n...
Mysql
Sqlite
2021-10-09
1
500
题解 | #获取当前薪水第二多的员工的emp_no以及其对应的薪水salary#
来自专栏
思路:关于这种获取第几多的XXX问题,一般可以直接使用 limit 来进行求解。 这里需要注意的是: 需要进行去重,举个例子:可能会存在两个相同的最高工资,如果不进行去重,那么使用 limit 将取不到第二大的工资 去重的方式有两种,第一种是 distinct 第二种是 group by sala...
Mysql
Sqlite
2021-10-09
1
448
首页
上一页
1
2
3
4
5
6
下一页
末页