索引与视图

索引

  
  
  
  
  1. CREATE CLUSTERED INDEX SNUM ON STUDENT(SNO DESC)  
  2. exec sp_helpindex student/*查询索引的创建情况,以查看存储过程的方式查看创建的索引格式如下:sp_helpindex [@objname=] 'name'*/  
  3. exec stu_all/*由于创建的是降序索引所以查询的结果以降序显示*/  
  4. /*创建唯一索引*/  
  5. CREATE UNIQUE INDEX SUNIQUE ON STUDENT(SNO DESC)  
  6. CREATE NONCLUSTERED INDEX SNONDEPT1 ON STUDENT(SDEPT ASC)/*如果没有特殊说明一般情况下创建的索引默认都为NONCLUSTERED的*/  
  7. CREATE NONCLUSTERED INDEX SNONAGE ON STUDENT (SAGE ASC,SBIRTH ASC)/*创建多字段非聚簇索引*/  
  8. /*删除一个索引格式为:DROP INDEX table_name.index_name*/  
  9. DROP INDEX STUDENT.SNONDEPT1  
  10. /*以下这两条可以查看sql语句的执行效率,在执行sql语句的以前先执行一下该语句,在执行了sql语句后在消息中即可看到详细说明*/  
  11. set statistics io on 
  12. set statistics time on 
  13. set showplan_text on 

视图

 

  
  
  
  
  1. set statistics io on 
  2. set statistics time on 
  3. exec sp_helptext computer--查看已经创建好的视图的sql语句  
  4. -------------------------------------------------------------------  
  5. CREATE VIEW STU AS SELECT SNO,SNAME,SGENTLE,SDEPT FROM STUDENT  
  6.  
  7. SELECT * FROM STU  
  8. ---------------------------------------------------------------------------  
  9. CREATE VIEW STUMAIL AS SELECT SNO,SNAME,SGENTLE,SDEPT FROM STUDENT WHERE SGENTLE='男' 
  10.  
  11. SELECT * FROM STUMAIL  
  12. --------------------------------------------------------------------------  
  13. CREATE VIEW COMPUTER(SNO,SNAME,CNO,GRADE)   
  14. AS   
  15. SELECT STUDENT.SNO,STUDENT.SNAME,SC.CNO,SC.GRADE   
  16. FROM STUDENT JOIN SC   
  17. ON STUDENT.SNO = SC.SNO   
  18. WHERE STUDENT.SDEPT='计算机' 
  19.  
  20. select *from computer  
  21. ----------------------------------------------------------------------------  
  22. SELECT STUDENT.SNO,STUDENT.SNAME,SC.CNO,SC.GRADE   
  23. FROM STUDENT,SC   
  24. WHERE STUDENT.SNO = SC.SNO and STUDENT.SDEPT='计算机' 
  25.  
  26. SELECT STUDENT.SNO,STUDENT.SNAME,SC.CNO,SC.GRADE   
  27. FROM STUDENT JOIN SC   
  28. ON STUDENT.SNO = SC.SNO   
  29. WHERE STUDENT.SDEPT='计算机' 
  30. --------------------------------------------------------------------------  
  31. CREATE VIEW COMDATA  
  32. AS 
  33. SELECT STUDENT.SNO 学号,STUDENT.SNAME 姓名,STUDENT.SGENTLE 性别,COURSE.CNAME 课程名,COURSE.CGRADE 学分,SC.GRADE 成绩  
  34. FROM STUDENT JOIN SC  
  35. ON STUDENT.SNO = SC.SNO  
  36. JOIN COURSE  
  37. ON COURSE.CNO = SC.CNO  
  38. WHERE STUDENT.SDEPT='计算机' 
  39. AND COURSE.CNAME='数据结构' 
  40.  
  41. SELECT * FROM COMDATA  
  42. -----------------------------------------------------------------------------  
  43. CREATE VIEW COMDATA1  
  44. AS 
  45. SELECT 学号,姓名,成绩  
  46. FROM COMDATA  
  47.  
  48. SELECT * FROM COMDATA1  
  49. -------------------------------------------------------------------------------  
  50. CREATE VIEW STU1  
  51. (SUM,SDEPT)---不指定具体的列时会报错  
  52. AS 
  53. SELECT COUNT(*),SDEPT  
  54. FROM STUDENT  
  55. GROUP BY SDEPT--不加group by 时会报错  
  56.  
  57. SELECT * FROM STU1  
  58. ----------------------------------------------------------------------------  
  59. CREATE VIEW COUR  
  60. (SNO1,SNAME,SGENTLE,SAGE,SBIRTH,SDEPT,SNO2,CNO,GRADE)----不指定具体的列时会报错  
  61. AS 
  62. SELECT STUDENT.*,SC.*  
  63. FROM STUDENT JOIN SC  
  64. ON STUDENT.SNO = SC.SNO  
  65. WHERE SC.GRADE>80  
  66.  
  67. SELECT * FROM COUR  

 

本文出自 “博客即日起停止更新” 博客,谢绝转载!

你可能感兴趣的:(索引,职场,视图,休闲)