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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

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

發布時間:2023/12/10 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 最新的Sql笔试题及答案,部门表,用户表,客户信息表,订单表 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

部門表(SM_DEPT)

字段名稱數據類型是否主鍵注釋
DEPT_IDNUMBERY部門ID
PARENT_DEPARTMENT_IDNUMBERN上級部門
DEPARTMENT_NAMEVARCHAR2(50)N部門名稱

用戶部門中間表(SM_USER_DEPT)

字段名稱數據類型是否主鍵注釋
IDNUMBERY主鍵
DEPT_IDNUMBERN部門ID
USER_IDNUMBERN用戶ID

用戶表(SM_USER)

字段名稱數據類型是否主鍵注釋
USER_IDNUMBERY用戶ID
USER_NAMEVARCHAR2(50)N用戶名稱
LOGON_NAMEVARCHAR2(50)N登錄名
IS_SALESVARCHAR2(1)N是否為業務員

客戶信息表(CTM_CUSTOMERS)

字段名稱數據類型是否主鍵注釋
CUSTOMER_IDNUMBERY客戶ID
CUSTOMER_NAMEVARCHAR2(50)N客戶姓名
CITYVARCHAR2(50)N所屬城市
STATEVARCHAR2(25)N所屬州
ZIP_CODEVARCHAR2(10)N郵政編碼
CONTACT_NAMEVARCHAR2(50)N聯系人
ADDRESSVARCHAR2(50)N聯系地址
TYPEVARCHAR2(50)N客戶類型
COMMENTSVARCHAR2(100)N備注

訂單頭表(PIM_HEADERS)

字段名稱數據類型是否主鍵注釋
PI_IDNUMBERY訂單ID
PI_NOVARCHAR2(50)N訂單號
CREATION_DATEDATEN創建日期
CUSTOMER_IDNUMBERN關聯客戶表的客戶ID
OPERATOR_IDNUMBERN關聯用戶表的用戶ID
CURRENCY_CODEVARCHAR2(50)N訂單幣種
EXCHAHGE_RATENUMBERN匯率

訂單行表(PIM_LINES)

字段名稱數據類型是否主鍵注釋
PI_IDNUMBERN訂單ID
PI_LINES_IDVARCHAR2(50)Y訂單行ID
PRODUCT_CODENUMBERN產品編碼
QUANTITYNUMBERN產品數量
PRICENUMBERN產品單價

問題

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笔试题及答案,部门表,用户表,客户信息表,订单表的全部內容,希望文章能夠幫你解決所遇到的問題。

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