? 软件测试面试:破解Mysql查询题

傳智播客旗下品牌:|||||

全國咨詢/投訴熱線:400-618-4000

軟件測試面試:破解Mysql查詢題

創建時間:2020年03月08日19時21分 瀏覽次數:

Mysql查詢題,不僅出境評率高,而且非常影響薪資談判,所以地位非常重要。
1.幾乎所有的軟件測試題都會有Mysql查詢練習,薪資高的大公司,由于應聘者多,所以甄選出更優秀的測試人員,往往會設置一兩道特別難的Mysql查詢題。

2. 如果我們其他題目都答的很好,但是Mysql查詢難題答的不好,和可能在面試競爭中被PK下去,導致自己和心儀的公司失之交臂。就算是競爭對手不強僥幸獲勝,也會讓我們在后面薪資談判上吃虧。

3. 反之,如果Mysql查詢難題練習不僅正確,而且解題快,那么就會給用人單位留下技術強悍的好印象,從而立刻甩開其他競爭者。不僅薪資談判上會占據有利地位,也有利于自己在公司未來的發展。

但尷尬的是,很多測試新手拿到題目之后卻往往確不知道如何解題,更別說Mysql查詢難題了。為讓大家更好掌握數據庫查詢題技巧,特撰寫技術文章給大家介紹。本文主要分為以下幾個步驟:

1. 第一步:準備建表語句

2. 第二步:將建表語句輸入到navicat中建立三個表

3. 第三步:了解查詢題做題三步驟

4. 第四步:做題驗證步驟

5. 第五步:總結

一. 第一步:準備建表語句

  1. 準備sql數據

-- 員工表 employees

-- 工資表 salary

-- 部門表 departments

create table departments (

deptid int(10) primary key,

deptname varchar(20) not null -- 部門名稱

);

insert into departments values ('1001', '市場部');

insert into departments values ('1002', '測試部');

insert into departments values ('1003', '開發部');

create table employees (

empid int(10) primary key,

empname varchar(20) not null, -- 姓名

sex varchar(4) default null, -- 性別

deptid int(20) default null, -- 部門編號

jobs varchar(20) default null, -- 崗位

politicalstatus varchar(20) default null, -- 政治面貌

leader int(10) default null

);

insert into employees values ('1', '王昭君', '女', '1003', '開發', '群眾', '9');

insert into employees values ('2', '諸葛亮', '男', '1003', '開發經理', '群眾', null);

insert into employees values ('3', '張飛', '男', '1002', '測試', '團員', '4');

insert into employees values ('4', '白起', '男', '1002', '測試經理', '黨員', null);

insert into employees values ('5', '大喬', '女', '1002', '測試', '黨員', '4');

insert into employees values ('6', '孫尚香', '女', '1001', '市場', '黨員', '12');

insert into employees values ('7', '百里玄策', '男', '1001', '市場', '團員', '12');

insert into employees values ('8', '小喬', '女', '1002', '測試', '群眾', '4');

insert into employees values ('9', '百里守約', '男', '1003', '開發', '黨員', '9');

insert into employees values ('10', '妲己', '女', '1003', '開發', '團員', '9');

insert into employees values ('11', '李白', '男', '1002', '測試', '團員', '4');

insert into employees values ('12', '孫臏', '男', '1001', '市場經理', '黨員', null);

create table salary (

sid int(10) primary key,

empid int(10) not null,

salary int(10) not null -- 工資

);

insert into salary values ('1', '7', '2100');

insert into salary values ('2', '6', '2000');

insert into salary values ('3', '12', '5000');

insert into salary values ('4', '9', '1999');

insert into salary values ('5', '10', '1900');

insert into salary values ('6', '1', '3000');

insert into salary values ('7', '2', '5500');

insert into salary values ('8', '5', '2000');

insert into salary values ('9', '3', '1500');

insert into salary values ('10', '8', '4000');

insert into salary values ('11', '11', '2600');

insert into salary values ('12', '4', '5300');

二、將建表語句輸入到navicat中建立三個表

1)新建數據庫test

1583659655849_01 新建數據庫test.png


2)將sql語句輸入到查詢編輯器中,運行

1583662054968_02 將sql語句輸入到查詢編輯器中.png


3)創建數據表并黏貼到excel中

1583662091127_03創建數據表并黏貼到excel中1.png

1583658859015_04 刪除test數據庫.png


三、了解查詢題做題三步驟

1.看題目字段來源于哪些表,如果是多表,就用內連接(暫不用子查詢,除非自己能明確能用子查詢或題意要求用子查詢)

 2。根據題意:靈活選擇查詢命令,多個查詢命令排除先后順序是

-- where過濾[的]

-- 分組(1)顯性:每,各 2)隱性:過濾總數[如人數或其他聚合函數]

-- haiving(的)

-- 排序[最高的]

-- 取值[前幾名]

-- 3. 根據題意,select取字段

四、做題驗證步驟

問題1:列出市場部的所有女職工的姓名和政治面貌

1)做題步驟

1583659798224_04 創建數據表并黏貼到excel中.png


2)得到題目答案

select deptname,count(*) from departments as d inner join employees as e on d.deptid=e.deptid where politicalstatus='黨員' group by deptname

2.顯示工資最高的前3名職工的職工號和姓名

1)做題步驟

1583659839020_05 做題步驟.png


2)得到題目的答案

select e.empid,empname,salary from salary as s inner join employees as e on s.empid=e.empid order by salary desc limit 3


五、總結

1.看題目字段來源于哪些表,如果是多表,就用內連接。【推薦了解傳智播客軟件測試培訓課程。】

 (暫不用子查詢,除非自己能明確能用子查詢或題意要求用子查詢)

2.根據題意:靈活選擇查詢命令,多個查詢命令排除先后順序是

where過濾[的]

-- 分組(1)顯性:每,各 2)隱性:過濾總數[如人數或其他聚合函數]

-- haiving(的)

-- 排序[最高的]

-- 取值[前幾名]

3. 根據題意,select取字段

按照上面的做題步驟,趕緊來試試下面這幾道題吧:

1. 列出市場部的所有女職工的姓名和政治面貌

2. 顯示所有職工的姓名、部門名和工資數

3. 列出工資在1000-2000之間的所有職工姓名

猜你喜歡:

MySQL如何新建數據庫?

互联网赚钱 江西11选5走势图 做网赚那个好 福彩3D 2019免费网赚资源 幸运飞艇聊天室app 网赚好一点的平台 2019真实网赚 网赚联盟 网赚月入过万是真的吗