Advertisement
Guest User

Untitled

a guest
Sep 18th, 2019
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 2.00 KB | None | 0 0
  1. SELECT DISTINCT
  2.     a.*
  3. FROM
  4.     (SELECT
  5.         pr.Nome AS 'Prova',
  6.         CONCAT(
  7.             CASE WHEN (SELECT Nome FROM alunos WHERE idAlunos = pa.idAluno2) IS NULL THEN (SELECT Nome FROM alunos WHERE idAlunos = pa.idAluno1) ELSE SUBSTRING_INDEX((SELECT Nome FROM alunos WHERE idAlunos = pa.idAluno1), ' ', 1) END,
  8.             CASE WHEN (SELECT Nome FROM alunos WHERE idAlunos = pa.idAluno2) IS NULL THEN '' ELSE ' e ' END,
  9.             COALESCE(SUBSTRING_INDEX((SELECT Nome FROM alunos WHERE idAlunos = pa.idAluno2), ' ', 1), '')
  10.         ) AS 'Alunos',
  11.         CASE WHEN (SELECT Nome FROM alunos WHERE idAlunos = pa.idAluno2) IS NULL OR (SELECT idEscolas FROM alunos WHERE idAlunos = pa.idAluno1) = (SELECT idEscolas FROM alunos WHERE idAlunos = pa.idAluno2) THEN (SELECT Nome FROM escolas WHERE idEscolas = al.idEscolas) ELSE CONCAT((SELECT Nome FROM escolas WHERE idEscolas = (SELECT idEscolas FROM alunos WHERE idAlunos = pa.idAluno1)), ' e ', (SELECT Nome FROM escolas WHERE idEscolas = (SELECT idEscolas FROM alunos WHERE idAlunos = pa.idAluno2))) END AS 'Escola',
  12.         CASE WHEN (SELECT Nome FROM alunos WHERE idAlunos = pa.idAluno2) IS NULL OR (SELECT idSeries FROM alunos WHERE idAlunos = pa.idAluno1) = (SELECT idSeries FROM alunos WHERE idAlunos = pa.idAluno2) THEN (SELECT series.Desc FROM series WHERE idSeries = al.idSeries) ELSE CONCAT((SELECT series.Desc FROM series WHERE idSeries = (SELECT idSeries FROM alunos WHERE idAlunos = pa.idAluno1)), ' e ', (SELECT series.Desc FROM series WHERE idSeries = (SELECT idSeries FROM alunos WHERE idAlunos = pa.idAluno2))) END AS 'Ano'
  13.     FROM
  14.         participacao pa
  15.     INNER JOIN provas pr ON pa.idProvas = pr.idProvas
  16.     INNER JOIN alunos al ON al.idAlunos = pa.idAluno1
  17.     INNER JOIN escolas es ON es.idEscolas = al.idEscolas
  18.     INNER JOIN series se ON se.idSeries = al.idSeries
  19.     WHERE
  20.         pr.idProvas = ${idProvas}) a,
  21.     (SELECT P1 + P2 + P3 AS 'Score' FROM participacao) Score,
  22.     (SELECT idProvas FROM provas) idProvas
  23. WHERE
  24.     idProvas = 1
  25. ORDER BY idProvas ASC, Score DESC;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement