Advertisement
Guest User

Untitled

a guest
Aug 30th, 2016
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.57 KB | None | 0 0
  1. CREATE VIEW [dbo].[VW_DIARIODECLASSE] AS
  2.  
  3. SELECT CODIGOUNIDADE
  4. , CODIGOPROFESSORTURMA
  5. , TURMA
  6. , DISCIPLINA
  7. , NOMEPROFESSOR
  8. , PERIODO
  9. , DATA
  10. , ANOINICIO
  11. , SEMESTREINICIO
  12. , CICLO
  13. , CURSO
  14. , TURNO
  15. , CODIGODISCIPLINA
  16. , CODIGOTURMA
  17. , ORDEM
  18. , PAGINA
  19. , DENSE_RANK() OVER (PARTITION BY DISCIPLINA, PAGINA ORDER BY DISCIPLINA, PAGINA ,SEQ_DATA) SEQ_DATA
  20. FROM (SELECT CODIGOUNIDADE
  21. , CODIGOPROFESSORTURMA
  22. , TURMA
  23. , DISCIPLINA
  24. , NOMEPROFESSOR
  25. , PERIODO
  26. , DATA
  27. , ANOINICIO
  28. , SEMESTREINICIO
  29. , CICLO
  30. , CURSO
  31. , TURNO
  32. , CODIGODISCIPLINA
  33. , CODIGOTURMA
  34. , ORDEM
  35. , CASE WHEN DENSE_RANK() OVER (PARTITION BY DISCIPLINA ORDER BY DISCIPLINA, ORDEM) BETWEEN 1 AND 20 THEN 1
  36. WHEN DENSE_RANK() OVER (PARTITION BY DISCIPLINA ORDER BY DISCIPLINA, ORDEM) BETWEEN 21 AND 40 THEN 2
  37. WHEN DENSE_RANK() OVER (PARTITION BY DISCIPLINA ORDER BY DISCIPLINA, ORDEM) BETWEEN 41 AND 60 THEN 3
  38. WHEN DENSE_RANK() OVER (PARTITION BY DISCIPLINA ORDER BY DISCIPLINA, ORDEM) BETWEEN 61 AND 80 THEN 4 ELSE 5 END PAGINA
  39. , DENSE_RANK() OVER (PARTITION BY DISCIPLINA ORDER BY DISCIPLINA, ORDEM) AS SEQ_DATA
  40. FROM (
  41. SELECT PT.CODIGOPROFESSORTURMA,
  42. H.CODIGOHORARIO ORDEM,
  43. TU.CODIGOUNIDADE,
  44. TU.DESCRICAO TURMA,
  45. D.DESCRICAO DISCIPLINA,
  46. PTH.NOMEPROFESSOR,
  47. PTH.PERIODO,
  48. H.DATA,
  49. TU.ANOINICIO,
  50. TU.SEMESTREINICIO,
  51. TU.CODIGOTURMA,
  52. CIC.DESCRICAO CICLO,
  53. CUR.DESCRICAO CURSO,
  54. TUR.DESCRICAO TURNO,
  55. TU.CODIGODISCIPLINA
  56. FROM ACD_TURMA TU
  57. INNER JOIN ACD_CICLO CIC ON CIC.CODIGOCICLO = TU.CODIGOCICLO
  58. INNER JOIN ACD_CURSO CUR ON CUR.CODIGOCURSO = CIC.CODIGOCURSO
  59. INNER JOIN ACD_TURNO TUR ON TUR.CODIGOTURNO = TU.CODIGOTURNO
  60. INNER JOIN SEC_PROFESSORTURMA PT ON TU.CODIGOTURMA = PT.CODIGOTURMA
  61. INNER JOIN SEC_PROFESSORTURMAHORRED PTH ON PT.CODIGOPROFESSORTURMA = PTH.CODIGOPROFESSORTURMA
  62. INNER JOIN HOR_HORARIO H ON PTH.CODIGOHORARIO = H.CODIGOHORARIO
  63. INNER JOIN SEC_DISCIPLINA D ON D.CODIGODISCIPLINA = TU.CODIGODISCIPLINA
  64. WHERE NOT EXISTS (SELECT 1
  65. FROM HOR_HORARIOEXCECAO HE
  66. WHERE TU.CODIGOTURMA = HE.CODIGOTURMA
  67. AND TIPOEXCECAO = 'C'
  68. AND H.DATA = HE.DATA
  69. AND H.CODIGOTURNO = HE.CODIGOTURNO
  70. AND PTH.PERIODO = HE.PERIODO)
  71.  
  72. UNION
  73.  
  74. SELECT PT.CODIGOPROFESSORTURMA,
  75. HE.CODIGOHORARIOEXCECAO ORDEM,
  76. TU.CODIGOUNIDADE,
  77. TU.DESCRICAO TURMA,
  78. D.DESCRICAO DISCIPLINA,
  79. PTH.NOMEPROFESSOR AS NOMEPROFESSOR,
  80. HE.PERIODO,
  81. HE.DATA,
  82. TU.ANOINICIO,
  83. TU.SEMESTREINICIO,
  84. TU.CODIGOTURMA,
  85. CIC.DESCRICAO CICLO,
  86. CUR.DESCRICAO CURSO,
  87. TUR.DESCRICAO TURNO,
  88. TU.CODIGODISCIPLINA
  89. FROM ACD_TURMA TU
  90. INNER JOIN ACD_CICLO CIC ON CIC.CODIGOCICLO = TU.CODIGOCICLO
  91. INNER JOIN ACD_CURSO CUR ON CUR.CODIGOCURSO = CIC.CODIGOCURSO
  92. INNER JOIN ACD_TURNO TUR ON TUR.CODIGOTURNO = TU.CODIGOTURNO
  93. INNER JOIN SEC_PROFESSORTURMA PT ON TU.CODIGOTURMA = PT.CODIGOTURMA
  94. INNER JOIN SEC_PROFESSORTURMAHORRED PTH ON PT.CODIGOPROFESSORTURMA = PTH.CODIGOPROFESSORTURMA
  95. INNER JOIN HOR_HORARIOEXCECAO HE ON TU.CODIGOTURMA = HE.CODIGOTURMA
  96. INNER JOIN SEC_DISCIPLINA D ON D.CODIGODISCIPLINA = TU.CODIGODISCIPLINA
  97. WHERE TIPOEXCECAO = 'A'
  98.  
  99. ) TAB
  100. )TAB2
  101. /*
  102. WHERE TURMA LIKE 'MBAEXESP06'
  103.  
  104. ORDER BY 3,15*/
  105.  
  106. GO
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement