日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

sql笔试题

發布時間:2023/12/10 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sql笔试题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

如圖,在微信群中遇到一個人求助,閑來無事,就試著看了下,居然發現自己不是很會。于是記錄下來了。

首先我按照圖片中的4個表,在oracle數據庫中建了4張對應的表

第一題:

查詢銷售量最高產品的前兩名:

我的思路:首先根據產品分組,然后求得每一組的總和,最后按照總和從大到小排序。然后將得到的結果作為一張子表 查詢子表中的前兩行

sql如下:

select a.pnofrom (select sum(volume) totalnumber, pnofrom cdm_dealgroup by pnoorder by totalnumber desc) awhere rownum < 3;

得到的結果如圖:


第二題:

--查詢每種產品銷量最高的銷售人員

我的思路:

首先根據產品分組,得到每組中的最大值,然后根據最大值去找銷售人員的id

select sname
? from cdm_salas
?where sno in (select sno
? ? ? ? ? ? ? ? ?from cdm_deal
? ? ? ? ? ? ? ? where volume in (select volume
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?from (select max(volume) volume, pno
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?from cdm_deal
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? group by pno)))


第三題:

查詢產品編號為2且銷售量超過100的銷售人員姓名以及所在公司

思路:根據條件查詢出銷售人員編號然后關聯代理商表,展示查詢結果

第四題:

我的思路:三個表關聯,然后分組查詢


問題五:

-- 查詢每個產品有多少個銷售人員在銷售

select pno,count(*) from cdm_deal group by pno;


問題6:

-- 查詢名稱包含BBB的代理商中的所有銷售人員
select * from cdm_salas cs where? cs.ano in(

select ca.ano from cdm_agent ca where ca.aname like'%BBB%');


問題7:

-- 查詢總銷售量最差的產品
select *
? from cdm_production
?where pno in
? ? ? ?(select aa.pno
? ? ? ? ? from (select pno, sum(volume) total from cdm_deal group by pno) aa
? ? ? ? ?where rownum < 2)


問題8:

-- 查詢2017年生產的產品的總銷量
select sum(volume) from cdm_deal where pno in (
select pno from cdm_production where pdate >= TO_DATE('2017/1/1', 'YYYY-MM-DD'))



附錄(表的創建以及插入的數據):

create table CDM_AGENT (ano? ?VARCHAR2(6),aname VARCHAR2(8) )create table CDM_DEAL (sno? ? VARCHAR2(6),pno? ? VARCHAR2(6),volume VARCHAR2(6) )create table CDM_PRODUCTION (pno? ?VARCHAR2(6),pname VARCHAR2(6),pdate DATE )create table CDM_SALAS (sno? ?VARCHAR2(6),sname VARCHAR2(6),ano? ?VARCHAR2(6) )insert into CDM_AGENT (ano, aname) values ('1', 'AAA公司'); insert into CDM_AGENT (ano, aname) values ('2', 'BBB公司'); insert into CDM_AGENT (ano, aname) values ('3', 'CCC公司'); commit; prompt 3 records loaded prompt Loading CDM_DEAL... insert into CDM_DEAL (sno, pno, volume) values ('1', '1', '21'); insert into CDM_DEAL (sno, pno, volume) values ('1', '2', '56'); insert into CDM_DEAL (sno, pno, volume) values ('1', '3', '33'); insert into CDM_DEAL (sno, pno, volume) values ('2', '2', '120'); insert into CDM_DEAL (sno, pno, volume) values ('2', '1', '32'); insert into CDM_DEAL (sno, pno, volume) values ('2', '3', '26'); insert into CDM_DEAL (sno, pno, volume) values ('3', '1', '73'); insert into CDM_DEAL (sno, pno, volume) values ('3', '3', '45'); insert into CDM_DEAL (sno, pno, volume) values ('4', '2', '111'); insert into CDM_DEAL (sno, pno, volume) values ('4', '3', '84'); insert into CDM_DEAL (sno, pno, volume) values ('5', '3', '52'); insert into CDM_DEAL (sno, pno, volume) values ('5', '1', '38'); insert into CDM_DEAL (sno, pno, volume) values ('5', '2', '91'); insert into CDM_DEAL (sno, pno, volume) values ('6', '2', '36'); insert into CDM_DEAL (sno, pno, volume) values ('6', '3', '48'); insert into CDM_DEAL (sno, pno, volume) values ('6', '1', '15'); commit;insert into CDM_PRODUCTION (pno, pname, pdate) values ('1', '產品A', to_date('06-07-2015', 'dd-mm-yyyy')); insert into CDM_PRODUCTION (pno, pname, pdate) values ('2', '產品B', to_date('06-07-2016', 'dd-mm-yyyy')); insert into CDM_PRODUCTION (pno, pname, pdate) values ('3', '產品C', to_date('06-07-2017', 'dd-mm-yyyy')); commit;insert into CDM_SALAS (sno, sname, ano) values ('1', '小趙', '2'); insert into CDM_SALAS (sno, sname, ano) values ('2', '小錢', '2'); insert into CDM_SALAS (sno, sname, ano) values ('3', '小孫', '3'); insert into CDM_SALAS (sno, sname, ano) values ('4', '小李', '1'); insert into CDM_SALAS (sno, sname, ano) values ('5', '小石', '3'); insert into CDM_SALAS (sno, sname, ano) values ('6', '小劉', '1'); commit;

總結

以上是生活随笔為你收集整理的sql笔试题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。