續接前兩篇部落格秋招-sql備戰練習1
秋招-sql備戰練習2
用到的資料庫表如下:
employees_test
create table employees_test(
id int primary key not null,
name text not null,
age int not null,
address char(50),
salary real
);
audit
create table audit(
emp_no int not null,
name text not null
);
titles_test
create table if not exists titles_test (
id int(11) not null primary key,
emp_no int(11) not null,
title varchar(50) not null,
from_date date not null,
to_date date default null);
員工獎金表emp_bonus
create table emp_bonus(
emp_no int not null,
recevied datetime not null,
btype smallint not null);
薪水表salaries
create table `salaries` (
`emp_no` int(11) not null,
`salary` int(11) not null,
`from_date` date not null,
`to_date` date not null, primary key (`emp_no`,`from_date`));
構造乙個觸發器audit_log,在向employees_test表中插入一條資料的時候,觸發插入相關的資料到audit中。
create trigger audit_log after insert on employees_test
begin
insert into audit(emp_no,name) values(new.id,new.name);
end;
titles_test中,刪除emp_no重複的記錄,只保留最小的id對應的記錄。
insert into titles_test values ('1', '10001', 'senior engineer', '1986-06-26', '9999-01-01'),
('2', '10002', 'staff', '1996-08-03', '9999-01-01'),
('3', '10003', 'senior engineer', '1995-12-03', '9999-01-01'),
('4', '10004', 'senior engineer', '1995-12-03', '9999-01-01'),
('5', '10001', 'senior engineer', '1986-06-26', '9999-01-01'),
('6', '10002', 'staff', '1996-08-03', '9999-01-01'),
('7', '10003', 'senior engineer', '1995-12-03', '9999-01-01');
delete from titles_test where id not in
(select min(id) from titles_test group by emp_no);
titles_test 中將id=5以及emp_no=10001的行資料替換成id=5以及emp_no=10005,其他資料保持不變,使用replace實現。
-- 方法1
-- select em.* from employees em,emp_v ev where em.emp_no=ev.emp_no;
-- 方法2
select * from employees intersect select * from emp_v;
將所有獲取獎金的員工當前的薪水增加10%。
update salaries
set salary=salary*1.1
where emp_no in (select emp_no from emp_bonus)
and to_date='9999-01-01';
查詢字串』10,a,b』 中逗號』,'出現的次數cnt。
select (length('10,a,b')-length(replace('10,a,b',',','')))/length(',')
as cnt;
備戰秋招 vlan
答 洪範範圍 讓pc1發廣播包,在其他pc上抓包,如果能夠抓到來自pc1的包則在同一廣播域 當交換機的介面被劃入vlan後,只會洪氾至相同vlan的介面 基於資料幀中的目標mac位址,來查詢本地的mac位址表,之後基於表中的記錄單播 到對應的介面中 資料幀進入交換機時,首先檢視源mac,然後將對應的...
備戰秋招 堆排序
public class heapsort 交換heap堆中i索引和j索引處的值 private static void exch comparable heap,int i,int j 根據原陣列source,構造出堆heap private static void createheap comp...
2021秋招備戰 MySQL面試相關知識
事務時訪問並可能更新資料庫中各種資料項的乙個程式執行單元。是乙個完整的業務邏輯單元事務不可以再分割 和事務相關的語句只有dml語句。資料庫主要分為五大模組 1.dql 資料查詢語言 凡是select語句都是 2.dml 資料操作語言 對錶內的資料進行增 刪 改 3.ddl 資料定義語言 庫和表的定義...