部门表(SM_DEPT)

字段名称 数据类型 是否主键 注释
DEPT_ID NUMBER Y 部门ID
PARENT_DEPARTMENT_ID NUMBER N 上级部门
DEPARTMENT_NAME VARCHAR2(50) N 部门名称

用户部门中间表(SM_USER_DEPT)

字段名称 数据类型 是否主键 注释
ID NUMBER Y 主键
DEPT_ID NUMBER N 部门ID
USER_ID NUMBER N 用户ID

用户表(SM_USER)

字段名称 数据类型 是否主键 注释
USER_ID NUMBER Y 用户ID
USER_NAME VARCHAR2(50) N 用户名称
LOGON_NAME VARCHAR2(50) N 登录名
IS_SALES VARCHAR2(1) N 是否为业务员

客户信息表(CTM_CUSTOMERS)

字段名称 数据类型 是否主键 注释
CUSTOMER_ID NUMBER Y 客户ID
CUSTOMER_NAME VARCHAR2(50) N 客户姓名
CITY VARCHAR2(50) N 所属城市
STATE VARCHAR2(25) N 所属州
ZIP_CODE VARCHAR2(10) N 邮政编码
CONTACT_NAME VARCHAR2(50) N 联系人
ADDRESS VARCHAR2(50) N 联系地址
TYPE VARCHAR2(50) N 客户类型
COMMENTS VARCHAR2(100) N 备注

订单头表(PIM_HEADERS)

字段名称 数据类型 是否主键 注释
PI_ID NUMBER Y 订单ID
PI_NO VARCHAR2(50) N 订单号
CREATION_DATE DATE N 创建日期
CUSTOMER_ID NUMBER N 关联客户表的客户ID
OPERATOR_ID NUMBER N 关联用户表的用户ID
CURRENCY_CODE VARCHAR2(50) N 订单币种
EXCHAHGE_RATE NUMBER N 汇率

订单行表(PIM_LINES)

字段名称 数据类型 是否主键 注释
PI_ID NUMBER N 订单ID
PI_LINES_ID VARCHAR2(50) Y 订单行ID
PRODUCT_CODE NUMBER N 产品编码
QUANTITY NUMBER N 产品数量
PRICE NUMBER N 产品单价

问题

1.编写SQL语句,查询PIM_HEADERS表,符合日期在2011-03-01和2011-03-25之间的PI订单,显示订单号,创建日志,订单客户名称,订单业务员名称

select t1.PI_NO,t1.CREATION_DATE,t2.CUSTOM_NAME,t3.USER_NAME
from (select * from PIM_HEADERSwhere CREATION_DATE between to_date('2011-03-01','yyyy-mm-dd')andto_date('2011-03-25','yyyy-mm-dd')) t1left join CTM_CUSTOMERS t2on t1.CUSTOMER_ID = t2.CUSTOMER_IDleft join SM_USER t3on t1.OPERATOR_ID = t3.USER_ID

2.编写SQL语句,查询所有部门名称及其给部门的业务员的个数,部门在2011-01-01到2011-03-01之间创建的PI订单数

select t1._DEPARTMENT_NAME,count(t2.USER_NAME),count(t3.PI_NO)
from SM_DEPT t1left join SM_USER_DEPT t2on t1.dept_id = t2.dept_idleft join (select * from PIM_HEADERSwhere CREATION_DATE between to_date('2011-01-01','yyyy-mm-dd')andto_date('2011-03-01','yyyy-mm-dd')) t3on t2.user_id = t3.OPERATOR_ID
group by t1.DEPT_ID

3.编写SQL语句,查询所有客户及其相关PI订单号,PI创建日期,PI订单相关业务员姓名及其业务所属部门名称

 selectt1.*,t2.PI_NO,t2.CREATION_DATE,t3.USER_NAME,t5.DEPARTMENT_NAME
from SM_CUSTOMERS t1left join PIM_HEADERS t2on t1.CUSTOER_ID = t2.CUSTOMER_IDleft join SM_USER t3on t2.OPERATOR_ID = t3.user_idleft join SM_USER_DEPT t4on t3.USER_ID = t4.USER_IDleft join SM_DEPT t5on t4.DEPT_ID = t5.DEPT_ID

4.编写SQL语句,更新没有下过PI订单的客户名称的备注为“从未发生业务往来”

update CTM_CUSTOMERS t1 set COMMENTS = '从未反生业务往来'where not exists (select PI_NO from PIM_HEADERS t2where t2.CUSTOMER_ID = t1.CUSTOMER_ID) ;commit;

5.编写SQL语句,查询所有客户名称及其所属城市,并按照城市名称降序,用户名称升序排序

 select CUSTOM_NAME,CITYfrom CTM_CUSTOMERSorder by city desc,CUSTOMER_NAME asc

6.编写SQL语句,查询出所有的客户的PI订单的下单金额,显示客户名称,订单币种,订单总数量及订单总额

 selectt2.CUSTOMER_NAME,t1.CURRENCY_CODE,t3.TOTAL,t4.TOTAL_MONEYfrom PIM_HEADERS t1left join CTM_CUSTOMERS t2on t1.CUSTOMER_ID = t2.CUSTOMER_IDleft join (select PI_ID,sum(QUANTITY) TOTAL,sum(QUANTITY*PRICE) TOTAL_MONEYfrom PIM_LINES group by PI_ID) t3on t1.PI_ID = t3.PI_ID;

7.编写函数,函数需传入部门ID,返回结果部门对应所有业务员姓名连接起来,中间用逗号隔开

create or replace function getUserByDeptId( dept_id number) return varchar2isres varchar2(200);cursor mycursor(did number) isselect t2.CUSTOMER_NAMEfrom (select * from SM_USER_DEPTwhere dept_id = did) t1left join SM_USER t2on t1.USER_ID = t2.USER_ID ;beginfor c_row in mycursor(dept_id) loopres := res ||','|| c_rowend loop;return res;end;

最新的Sql笔试题及答案,部门表,用户表,客户信息表,订单表相关推荐

  1. Oracle最新的Sql笔试题及答案

    一.表结构准备 部门表(SM_DEPT) 字段名称 数据类型 是否主键 注释 DEPT_ID NUMBER Y 部门ID PARENT_DEPARTMENT_ID NUMBER N 上级部门 DEPA ...

  2. java中级职称考试试题_Java中级开发工程师笔试题及答案2016

    Java中级开发工程师笔试题及答案2016 java中级工程师考试试题你做了吗?下面随yjbys小编一起来看看最新Java中级开发工程师笔试题及答案,仅供考生参考! 1) 描述Web Service的 ...

  3. 2012九月十月腾讯,网易游戏,百度最新校园招聘笔试题

    十月下旬腾讯,网易游戏,百度最新校园招聘笔试题集锦(第271-330题) 引言 此文十月百度,阿里巴巴,迅雷搜狗最新面试十一题已经整理了最新的面试题70道,本文依次整理腾讯,网易游戏,百度等各大公司最 ...

  4. 2019最新整理JAVA面试题附答案

    2019最新整理JAVA面试题附答案 包含的模块: 本文分为十九个模块,分别是:Java 基础.容器.多线程.反射.对象拷贝.Java Web .异常.网络.设计模式.Spring/Spring MV ...

  5. sql 以a开头的所有记录_#9#猴子聊数据分析之常见的SQL笔试题和面试题(下)

    题目来源 猴子:常见的SQL笔试题和面试题(下)​zhuanlan.zhihu.com 1.SQL语言允许使用通配符进行字符串匹配的操作,其中'%'可以表示:多个字符 2.通过 SQL,如何从 &qu ...

  6. 北大青鸟Java内侧答案_北大青鸟推荐:Java精选笔试题(含答案解析)

    北大青鸟推荐:Java精选笔试题(含答案解析)如果你是计算机专业出生,但是还没有找到工作的话,你就得补补技术了,一些关于面试.笔试的题要多刷一刷.有可能你知道答案,但是由于语言组织能力有所欠缺,所以面 ...

  7. 博彦科技JAVA笔试题及答案

    博彦科技JAVA笔试题及答案 一.单选题 15题*4分=60分 1.链表不具有的特点是(). A.插入.删除不需要移动元素: B.可随机访问任一元素: C.不必事先估计存储空间: D.所需空间与线性长 ...

  8. php的魔术方式包含哪些(越多越好)? 在何情况下被自动调用?,php笔试题及答案

    php笔试题及答案 T1 一.填空题 1.PHP是用什么语言编写的? :脚本语言 2. LAMP的全称是? :LINUX .APACHE. MYSQL. PHP 3. PHP的三种注释方式? :#./ ...

  9. 最新字节跳动面试题与答案: 无序数组的中位数 (快排思想O(N) 时间复杂度)

    最新字节跳动面试题与答案 1.算法题一:无序数组的中位数 (快排思想O(N) 时间复杂度) package com.lightsword.leetcodeproblemsimport org.juni ...

  10. 2020最新整理PHP面试题附答案

    2019最新整理PHP面试题附答案 1.什么事面向对象?主要特征是什么? 面向对象是程序的一种设计方式,它利于提高程序的重用性,使程序结构更加清晰.主要特征:封装.继承.多态. 2.SESSION 与 ...

最新文章

  1. git clean和git reset结合用法
  2. 在“内卷”、“红海”的2020 年,开垦计算机视觉领域的知识荒原:BatchNorm
  3. cocos2d-x 3.1.1 学习笔记[15] Shader 著色器
  4. PHP 和 ASP.NET的优势和弱点
  5. Hibernate备忘录
  6. 两种方法清除Excel保护密码
  7. 【待完善】make: command not found,以及libtool.m4 and ltmain.sh have a version mismatch问题的解决方案...
  8. New to My Oracle Support?
  9. 今天学习了无序列表和有序列表和使用HTML5创建表格
  10. 文字不间断滚动(转)
  11. 美国人用什么android手机,美国过半消费者使用智能手机 Android占48.5%
  12. 2014/08/11 – Backbonejs
  13. Android Studio如何去除界面默认标题栏
  14. UVALive 6181
  15. 高性能mysql系统设计_MySQL 高性能表设计规范
  16. css布局的漂浮、position定位
  17. Linux中jsoncpp的编译使用
  18. 汉明码纠错java_汉明码纠错的基本原理及优化解决方案
  19. 游戏化方式学习Git指令
  20. 互联网寒冬,大公司都在裁员,当程序员还有前途吗?

热门文章

  1. Web测试-Web界面易用性测试
  2. Windows 命令使用之 ping 命令
  3. DirectX Repair V3.0
  4. 台服DNF更换Mysql5.6(rpm包安装、二进制安装)
  5. Android之monkey Test
  6. matlab确定物体影子,用MATLAB浅析太阳影子定位问题
  7. 《21天学通C语言(第6版•修订版)》一1.7 问与答
  8. 十四步实现拥有强大AI的五子棋游
  9. 移动应用开发学习通测试题答案
  10. 清华大学范玉顺互联网与大数据_互联网+时代的互联网思维与大数据思维