Advertisement
Guest User

Untitled

a guest
Jan 22nd, 2020
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.98 KB | None | 0 0
  1. /* sql puro */
  2. SELECT *
  3. FROM (
  4. SELECT ea.aluno_cod AS aluno_id,
  5. ea.aluno_ra AS aluno_ra,
  6. be.est_sigla AS aluno_ra_uf,
  7. bp_aluno.pes_nome AS aluno,
  8. ec.classe_ano AS ano,
  9. ee.escol_cod AS escola_id,
  10. bp_escola.pes_nome AS escola_nome_razao,
  11. bp_escola.pes_fantasia AS escola_nome_fantasia,
  12. ec.classe_cod AS classe_id,
  13. ec.classe_numprodesp,
  14. ec.classe_descricao,
  15. em.matric_data AS matricula_data,
  16. st_matricula.sta_titulo AS matricula_status,
  17. eef.etapafase_cod AS fase_id,
  18. eef.etapafase_descricao AS fase_descricao,
  19. eef.etapafase_dtinicio AS fase_data_inicio,
  20. ed.disc_cod AS disciplina_id,
  21. ed.disc_descricao AS disciplina_descricao,
  22. ed.disc_ordem AS disciplina_ordem,
  23. get_conceito_global(
  24. em.matric_cod,
  25. em.matric_classecod,
  26. ed.disc_cod,
  27. 0,
  28. eef.etapafase_cod,
  29. 0
  30. ) AS nota,
  31. (
  32. SELECT count(1)
  33. FROM edu_classe_status_conselho ecsc
  34.  
  35. WHERE
  36. ecsc.classecons_classecod = ec.classe_cod
  37. AND ecsc.classecons_status = 1
  38. AND ecsc.classecons_etapafasecod = eef.etapafase_cod
  39. AND ecsc.classecons_conselho_final IS NULL
  40. ) AS conselho_fechado
  41.  
  42. FROM edu_aluno ea
  43.  
  44. INNER JOIN edu_matricula em
  45. ON ea.aluno_cod = em.matric_alunocod
  46.  
  47. INNER JOIN edu_matricula_status ems
  48. ON ems.matricst_matriccod = em.matric_cod
  49. AND ems.matricst_ativo = 1
  50.  
  51. INNER JOIN edu_classe ec
  52. ON em.matric_classecod = ec.classe_cod
  53.  
  54. INNER JOIN edu_calendario_curricular ecc
  55. ON ec.classe_cod = ecc.ccurric_classecod
  56.  
  57. INNER JOIN edu_etapa_fase eef
  58. ON ecc.ccurric_etapafasecod = eef.etapafase_cod
  59.  
  60. INNER JOIN edu_grade eg
  61. ON ec.classe_gradecod = eg.grade_cod
  62.  
  63. INNER JOIN edu_grade_config egc
  64. ON eg.grade_cod = egc.gradecfg_gradecod
  65.  
  66. INNER JOIN edu_grade_disciplina_serie egds
  67. ON egc.gradecfg_cod = egds.gradediscserie_gradecfgcod
  68. AND ec.classe_seriecod = egds.gradediscserie_seriecod
  69.  
  70. INNER JOIN edu_disciplina ed
  71. ON (
  72. (
  73. egds.gradediscserie_disccod_sec IS NULL
  74. AND egds.gradediscserie_disccod = ed.disc_cod
  75. )
  76. OR (
  77. egds.gradediscserie_disccod_sec IS NOT NULL
  78. AND egds.gradediscserie_disccod_sec = ed.disc_cod
  79. )
  80. )
  81.  
  82. INNER JOIN edu_escola ee
  83. ON ec.classe_escolcod = ee.escol_cod
  84.  
  85. INNER JOIN bas_pessoa bp_aluno
  86. ON ea.aluno_pescod = bp_aluno.pes_cod
  87.  
  88. INNER JOIN bas_pessoa bp_escola
  89. ON ee.escol_pescod = bp_escola.pes_cod
  90.  
  91. INNER JOIN bas_status st_matricula
  92. ON st_matricula.sta_numero = ems.matricst_status
  93. AND sta_tipo = 'EDU_MATRICULA_STATUS'
  94.  
  95. LEFT JOIN bas_estados be
  96. ON ea.aluno_ra_estcod = be.est_cod
  97.  
  98. WHERE
  99. aluno_ra = '000110765987-5' --'000109646392-1' --:ALUNO_RA
  100. AND (
  101. (
  102. ea.aluno_ra_estcod IS NOT NULL
  103. AND be.est_sigla = 'SP'--:EST_SIGLA
  104. )
  105. OR (
  106. ea.aluno_ra_estcod IS NULL
  107. )
  108. )
  109.  
  110. GROUP BY
  111. ea.aluno_cod,
  112. ea.aluno_ra,
  113. be.est_sigla,
  114. bp_aluno.pes_nome,
  115. ec.classe_ano,
  116. ee.escol_cod,
  117. bp_escola.pes_nome,
  118. bp_escola.pes_fantasia,
  119. ec.classe_cod,
  120. ec.classe_numprodesp,
  121. ec.classe_descricao,
  122. st_matricula.sta_titulo,
  123. eef.etapafase_cod,
  124. eef.etapafase_descricao,
  125. em.matric_data,
  126. em.matric_cod,
  127. ed.disc_cod,
  128. ed.disc_ordem
  129.  
  130. UNION ALL
  131.  
  132. SELECT ea.aluno_cod AS aluno_id,
  133. ea.aluno_ra AS aluno_ra,
  134. be.est_sigla AS aluno_ra_uf,
  135. bp_aluno.pes_nome AS aluno,
  136. ec.classe_ano AS ano,
  137. ee.escol_cod AS escola_id,
  138. bp_escola.pes_nome AS escola_nome_razao,
  139. bp_escola.pes_fantasia AS escola_nome_fantasia,
  140. ec.classe_cod AS classe_id,
  141. ec.classe_numprodesp,
  142. ec.classe_descricao,
  143. em.matric_data AS matricula_data,
  144. st_matricula.sta_titulo AS matricula_status,
  145. NULL AS fase_id,
  146. 'CONCEITO FINAL' AS fase_descricao,
  147. NULL AS fase_data_final,
  148. ed.disc_cod AS disciplina_id,
  149. ed.disc_descricao AS disciplina_descricao,
  150. ed.disc_ordem AS disciplina_ordem,
  151. get_conceito_final(
  152. em.matric_cod,
  153. em.matric_classecod,
  154. ed.disc_cod,
  155. 0,
  156. ee2.etapa_cod,
  157. 0
  158. ) AS nota,
  159. (
  160. SELECT count(1)
  161. FROM edu_classe_status_conselho ecsc
  162.  
  163. WHERE
  164. ecsc.classecons_classecod = ec.classe_cod
  165. AND ecsc.classecons_status = 1
  166. AND ecsc.classecons_etapafasecod IS NULL
  167. AND ecsc.classecons_conselho_final = 1
  168. ) AS conselho_fechado
  169.  
  170. FROM edu_aluno ea
  171.  
  172. INNER JOIN edu_matricula em
  173. ON ea.aluno_cod = em.matric_alunocod
  174.  
  175. INNER JOIN edu_matricula_status ems
  176. ON ems.matricst_matriccod = em.matric_cod
  177. AND ems.matricst_ativo = 1
  178.  
  179. INNER JOIN edu_classe ec
  180. ON em.matric_classecod = ec.classe_cod
  181.  
  182. INNER JOIN edu_calendario_curricular ecc
  183. ON ec.classe_cod = ecc.ccurric_classecod
  184.  
  185. INNER JOIN edu_etapa_fase eef
  186. ON ecc.ccurric_etapafasecod = eef.etapafase_cod
  187.  
  188. INNER JOIN edu_etapa ee2
  189. ON eef.etapafase_etapacod = ee2.etapa_cod
  190.  
  191. INNER JOIN edu_grade eg
  192. ON ec.classe_gradecod = eg.grade_cod
  193.  
  194. INNER JOIN edu_grade_config egc
  195. ON eg.grade_cod = egc.gradecfg_gradecod
  196.  
  197. INNER JOIN edu_grade_disciplina_serie egds
  198. ON egc.gradecfg_cod = egds.gradediscserie_gradecfgcod
  199. AND ec.classe_seriecod = egds.gradediscserie_seriecod
  200.  
  201. INNER JOIN edu_disciplina ed
  202. ON (
  203. (
  204. egds.gradediscserie_disccod_sec IS NULL
  205. AND egds.gradediscserie_disccod = ed.disc_cod
  206. )
  207. OR (
  208. egds.gradediscserie_disccod_sec IS NOT NULL
  209. AND egds.gradediscserie_disccod_sec = ed.disc_cod
  210. )
  211. )
  212.  
  213. INNER JOIN edu_escola ee
  214. ON ec.classe_escolcod = ee.escol_cod
  215.  
  216. INNER JOIN bas_pessoa bp_aluno
  217. ON ea.aluno_pescod = bp_aluno.pes_cod
  218.  
  219. INNER JOIN bas_pessoa bp_escola
  220. ON ee.escol_pescod = bp_escola.pes_cod
  221.  
  222. INNER JOIN bas_status st_matricula
  223. ON st_matricula.sta_numero = ems.matricst_status
  224. AND sta_tipo = 'EDU_MATRICULA_STATUS'
  225.  
  226. LEFT JOIN bas_estados be
  227. ON ea.aluno_ra_estcod = be.est_cod
  228.  
  229. WHERE
  230. aluno_ra = '000110765987-5' --'000109646392-1' --:ALUNO_RA --
  231. AND (
  232. (
  233. ea.aluno_ra_estcod IS NOT NULL
  234. AND be.est_sigla = 'SP'--:EST_SIGLA
  235. )
  236. OR (
  237. ea.aluno_ra_estcod IS NULL
  238. )
  239. )
  240.  
  241. GROUP BY
  242. ea.aluno_cod,
  243. ea.aluno_ra,
  244. be.est_sigla,
  245. bp_aluno.pes_nome,
  246. ec.classe_ano,
  247. ee.escol_cod,
  248. bp_escola.pes_nome,
  249. bp_escola.pes_fantasia,
  250. ec.classe_cod,
  251. ec.classe_numprodesp,
  252. ec.classe_descricao,
  253. st_matricula.sta_titulo,
  254. em.matric_data,
  255. em.matric_cod,
  256. ed.disc_cod,
  257. ee2.etapa_cod,
  258. ed.disc_ordem
  259. ) AS vw
  260. ORDER BY
  261.  
  262. vw.matricula_data,
  263. vw.fase_data_inicio,
  264. vw.disciplina_ordem;
  265.  
  266.  
  267.  
  268. SELECT *
  269. FROM edu_classe_status_conselho ecsc
  270.  
  271. WHERE ecsc.classecons_classecod = 4208
  272. AND ecsc.classecons_status = 1
  273. AND ecsc.classecons_etapafasecod = 93;
  274.  
  275.  
  276. SELECT *
  277.  
  278. FROM edu_classe_fase_status ecfs
  279. WHERE
  280. classest_classecod = 4208
  281. AND ecfs.classest_tipo = 1
  282. AND ecfs.classest_disccod = 1
  283. AND ecfs.classest_etapafasecod = 93;
  284.  
  285.  
  286.  
  287. SELECT vw.pes_fantasia,
  288. vw.classe_cod,
  289. vw.classe_descricao,
  290. count(vw.classest_etapafasecod) AS qtd
  291.  
  292. FROM (
  293. SELECT ec.classe_cod,
  294. ec.classe_descricao,
  295. ecfs.classest_etapafasecod,
  296. bp.pes_fantasia
  297.  
  298. FROM edu_classe ec
  299.  
  300. INNER JOIN edu_escola ee
  301. ON ee.escol_cod = ec.classe_escolcod
  302.  
  303. INNER JOIN bas_pessoa bp
  304. ON bp.pes_cod = ee.escol_pescod
  305.  
  306. INNER JOIN edu_classe_fase_status ecfs
  307. ON ecfs.classest_classecod = ec.classe_cod
  308. AND ecfs.classest_tipo = 1
  309.  
  310. WHERE
  311. ec.classe_ano = 2019
  312.  
  313. GROUP BY
  314. ec.classe_cod,
  315. ec.classe_descricao,
  316. ecfs.classest_etapafasecod,
  317. bp.pes_fantasia
  318.  
  319. ) AS vw
  320.  
  321. GROUP BY
  322. vw.classe_cod,
  323. vw.classe_descricao,
  324. vw.pes_fantasia
  325.  
  326. ORDER BY
  327. qtd
  328. ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement