Advertisement
Guest User

Untitled

a guest
May 13th, 2015
253
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 5.84 KB | None | 0 0
  1. -----------------1---------------
  2. CREATE TABLE NHAN_VIEN_CHUYENBKA (NV_ID NUMBER(10), MA_NV varchar2(20), TEN_NV varchar2(100),SDT varchar2(12),EMAIL varchar2(100),DIEM1 NUMBER(10), DIEM2 NUMBER(10), STATUS NUMBER(1))
  3. /
  4.  
  5.  
  6.  
  7. -----------------2----------------
  8.  
  9. ---T?o sequence có giá tr? kh?i t?o là 10, giá tr? l?n nh?t là 1000000, kho?ng tang là 1;
  10. ---d?t tên theo d?ng NHAN_VIEN_{MAIL}_SEQ
  11. CREATE SEQUENCE NHAN_VIEN_CHUYENBKA_SEQ
  12. INCREMENT BY 1
  13. START WITH 10
  14. MAXVALUE 1000000
  15. /
  16. SELECT * FROM NHAN_VIEN_CHUYENBKA
  17. /
  18.  
  19.  
  20.  
  21. -----------------3------------------
  22. ---Vi?t câu l?nh SQL insert d? li?u vào b?ng v?i giá tr? tru?ng NV_ID du?c l?y t? giá tr? c?a sequence dã t?o ? bu?c 2.
  23. INSERT INTO NHAN_VIEN_CHUYENBKA VALUES (NHAN_VIEN_CHUYENBKA_SEQ.NEXTVAL,'NV01','Nguyen Van A','01689953142','chuyenbka@gmail.com',9,9,1)
  24. /
  25. INSERT INTO NHAN_VIEN_CHUYENBKA VALUES (NHAN_VIEN_CHUYENBKA_SEQ.NEXTVAL,concat('NV',NHAN_VIEN_CHUYENBKA_SEQ.nextval-10),'Nguyen Van B','01689953143','chuyenbka2@gmail.com',8,10,1)
  26. /
  27. INSERT INTO NHAN_VIEN_CHUYENBKA VALUES (NHAN_VIEN_CHUYENBKA_SEQ.NEXTVAL,concat('NV',NHAN_VIEN_CHUYENBKA_SEQ.nextval-10),'Nguyen Van C','01689953144','chuyenbka3@gmail.com',8,9,1)
  28. /
  29. INSERT INTO NHAN_VIEN_CHUYENBKA VALUES (NHAN_VIEN_CHUYENBKA_SEQ.NEXTVAL,concat('NV',NHAN_VIEN_CHUYENBKA_SEQ.nextval-10),'Nguyen Van D','01689953145','chuyenbka4@gmail.com',8,7,0)
  30. /
  31.  
  32.  
  33.  
  34.  
  35. -----------------4------------------
  36. ----Vi?t câu l?nh l?y ra sinh viên có t?ng DIEM1 + DIEM2 cao nh?t
  37. SELECT * FROM NHAN_VIEN_CHUYENBKA WHERE (diem1+diem2)= (SELECT MAX(diem1 + diem2) FROM NHAN_VIEN_CHUYENBKA )
  38. /
  39.  
  40.  
  41.  
  42. ------------------5----------------------
  43. --Vi?t câu l?nh T?o thêm b?ng d? li?u PHONG_BAN_{EMAIL} v?i thông tin (PB_ID number, PB_CODE varchar(20), PB_NAME varchar(100))
  44. CREATE TABLE PHONG_BAN_CHUYENBKA (PB_ID NUMBER, PB_CODE VARCHAR(20), PB_NAME VARCHAR(100))
  45. /
  46. INSERT INTO phong_ban_chuyenbka VALUES (1,'PB01','phong hanh chinh')
  47. /
  48. INSERT INTO phong_ban_chuyenbka VALUES (2,'PB02','phong dieu hanh')
  49. /
  50. INSERT INTO phong_ban_chuyenbka VALUES (3,'PB03','phong bao ve')
  51. /
  52. SELECT * FROM phong_ban_chuyenbka
  53. /
  54.  
  55.  
  56.  
  57. ----------------------6----------------------
  58. --Vi?t câu l?nh c?p nh?t l?i b?ng NHAN_VIEN thêm tru?ng PB_ID (thông tin ID c?a phòng ban liên k?t v?i b?ng PHONG_BAN)
  59. ALTER TABLE nhan_vien_chuyenbka ADD(PB_ID NUMBER)
  60. /
  61.  
  62.  
  63.  
  64.  
  65. --------------------7-----------------
  66. --7.  Vi?t câu l?nh hi?n th? ra các thông tin: (dùng câu l?nh join)
  67. --Tên nhân viên: l?y t? tru?ng TEN_NV b?ng NHANVIEN… dã du?c chu?n hóa (ch? cái d?u sau d?u space vi?t hoa)
  68. --Tên phòng ban: L?y t? tru?ng PB_NAME c?a b?ng PHONG_BAN
  69.  
  70. SELECT INITCAP (nv.ten_nv), pb.pb_name
  71. FROM nhan_vien_chuyenbka nv, phong_ban_chuyenbka pb
  72. WHERE nv.pb_id = pb.pb_id
  73. /
  74.  
  75.  
  76.  
  77. -----------------------8---------------------------
  78. ---8.  Vi?t câu l?nh l?y ra các tru?ng thông tin
  79. --Tên Nhân viên: l?y t? tru?ng TEN_NV b?ng NHANVIEN…
  80. --Ð?a ch? mail: l?y d?a ch? mail sau khi c?t b? duôi @.., ví d? abc@viettel.com.vn ? abc
  81.  
  82. SELECT ten_nv, SUBSTR(email,1,INSTR(email,'@')-1) FROM nhan_vien_chuyenbka
  83. /
  84.  
  85.  
  86.  
  87. ----------------------9-------------------------------
  88. --T?o b?ng NHAN_VIEN_{MAIL}_TEMP v?i c?u trúc gi?ng v?i b?ng NHAN_VIEN_{MAIL}, di?u ki?n: T?o thông qua câu l?nh create và câu l?nh select
  89. CREATE TABLE nhan_vien_chuyenbka_temp AS SELECT * FROM nhan_vien_chuyenbka
  90. /
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97. --------------------------10---------------------------
  98. --Vi?t câu l?nh Insert t?t c? d? li?u c?a b?ng NHAN_VIEN_{MAIL}  vào b?ng NHAN_VIEN_{MAIL}_TEMP (dùng câu l?nh insert, select)
  99. INSERT INTO nhan_vien_chuyenbka_temp SELECT * FROM nhan_vien_chuyenbka
  100. /
  101.  
  102.  
  103.  
  104. --------------------------11--------------------------------
  105. --11. Vi?t câu l?nh l?y ra nhân viên và tr?ng thái ho?t d?ng v?i di?u ki?n, n?u status = 0 thì hi?n th? tr?ng thái là: ‘Không ho?t d?ng’, n?u status = 1 thì hi?n th? là ‘Ho?t d?ng’ (Dùng câu l?nh decode)
  106. SELECT ten_nv, decode(STATUS,0,'khong hoat dong','hoat dong') FROM nhan_vien_chuyenbka
  107. /
  108.  
  109.  
  110.  
  111. ----------------------------12------------------------------
  112. --Vi?t câu l?nh l?y ra 5 nhân viên có DIEM1 cao nh?t
  113. SELECT * FROM (SELECT * FROM nhan_vien_chuyenbka ORDER BY diem1 DESC) WHERE rownum < 6
  114. /
  115.  
  116.  
  117.  
  118.  
  119. ----------------------------13------------------------------
  120. --Th?c hành s? d?ng các hàm decode, replace, concat, instr, trunc, round, to_char, to_date, …
  121. SELECT REPLACE(LOWER(ma_nv),'nv','NV0') FROM nhan_vien_chuyenbka
  122. /
  123. UPDATE nhan_vien_chuyenbka SET ma_nv = REPLACE(LOWER(ma_nv),'nv','NV0')
  124. /
  125. SELECT trunc(2.39,1) FROM nhan_vien_chuyenbka
  126. /
  127. SELECT round(2.39,1) FROM nhan_vien_chuyenbka
  128. /
  129. SELECT to_char(2.391) FROM nhan_vien_chuyenbka
  130. /
  131. SELECT to_date('10022015','ddMMyyyy') FROM nhan_vien_chuyenbka
  132. /
  133.  
  134.  
  135.  
  136.  
  137. ---------------------14------------------
  138. ---------Vi?t câu l?nh l?y ra ngày cu?i cùng c?a tháng hi?n t?i
  139. SELECT LAST_DAY(SYSDATE) FROM nhan_vien_chuyenbka
  140. /
  141. ---------Vi?t câu l?nh l?y ra ngày d?u c?a tháng sau
  142. SELECT trunc(ADD_MONTHS(SYSDATE,1), 'month' ) FROM nhan_vien_chuyenbka
  143. /
  144. ---------Chuy?n ngày hi?n t?i v? xâu có d?nh d?ng: ‘yyyy/mm/dd hh24:mi:ss’
  145. SELECT TO_CHAR(SYSDATE, 'yyyy/mm/dd hh24:mi:ss') FROM nhan_vien_chuyenbka
  146. /
  147.  
  148.  
  149.  
  150. ---------------------------------15-------------------------------
  151. -----L?y ra danh sách các nhân viên có tên b?t d?u b?ng 1 ký t? ch?
  152. SELECT * FROM nhan_vien_chuyenbka WHERE ASCII(ten_nv) > 64 AND  ASCII(ten_nv) <97
  153. /
  154. -----L?y ra danh sách nhân viên tên có d? dài là 3 ký t?
  155. SELECT * FROM nhan_vien_chuyenbka WHERE LENGTH(ten_nv)=3
  156. /
  157. -----L?y ra danh sách nhân viên trong tên có ch?a ký t? ‘_’
  158. SELECT * FROM nhan_vien_chuyenbka WHERE ten_nv LIKE '%_%'
  159. /
  160.  
  161.  
  162.  
  163. ----------------------16-----------------
  164. DROP TABLE nhan_vien_chuyenbka
  165. /
  166. DROP TABLE nhan_vien_chuyenbka_temp
  167. /
  168. DROP TABLE phong_ban_chuyenbka
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement