Questão nº 23
Questão de Tecnologia da Informação · FCC TRT15 2024 (nº 23)
Considere a tabela `t_audiencias` que armazena informações sobre audiências marcadas.
```
CREATE TABLE t_audiencias (
id_audiencia INT PRIMARY KEY,
numero_processo VARCHAR(50) NOT NULL,
data_audiencia DATETIME NOT NULL,
status VARCHAR(20) NOT NULL,
vara_trabalho INT NOT NULL
);
```
Considerando que esta tabela está criada e contém valores adequados, em um banco de dados MySQL aberto e funcionando em condições ideais, o comando que seleciona todas as audiências que estão marcadas como `'Pendente'`, cuja data de audiência seja posterior ao dia e hora atuais e que pertençam às varas de trabalho 1, 2 ou 3, é:
`SELECT * FROM t_audiencias WHERE status = 'Pendente' AND`
- A`data_audiencia > CURRENT_DATE_TIME() AND vara_trabalho IN (1, 2, 3);`
- B`data_audiencia > NOW() AND vara_trabalho IN (1, 2, 3);` (alternativa correta)
- C`data_audiencia > SYSDATE() AND vara_trabalho BETWEEN 1..3;`
- D`data_audiencia > NOW() OR vara_trabalho = 1 OR vara_trabalho = 2 OR vara_trabalho = 3;`
- E`data_audiencia > CURDATE() AND vara_trabalho IN (1..3);`
Resposta comentada
Gabarito Alternativa B
Para selecionar dados que atendam a múltiplas condições, usamos a cláusula WHERE e combinamos essas condições com AND. Para obter a data e hora exatas do momento atual, o MySQL oferece funções específicas.
- (A) Incorreta:
CURRENT_DATE_TIME()não é uma função SQL padrão ou do MySQL para obter a data e hora atuais. - (B) Correta:
NOW()é a função correta no MySQL para obter a data e hora atuais (timestamp), eIN (1, 2, 3)é a forma padrão e correta de verificar se um valor está em uma lista de opções. - (C) Incorreta:
SYSDATE()é uma função válida no MySQL para a data e hora atuais, mas a sintaxeBETWEEN 1..3está incorreta; o correto seriaBETWEEN 1 AND 3ouIN (1, 2, 3). A armadilha aqui é queSYSDATE()é uma função real, mas a sintaxe doBETWEENestá errada. - (D) Incorreta: Embora
NOW()e a lista deORs para as varas sejam sintaticamente corretos, o uso do operadorORentre a condição dedata_audienciae as condições devara_trabalhoestá incorreto para o requisito. A questão pede que todas as condições sejam atendidas (status 'Pendente' E data futura E varas 1, 2 ou 3), o que exige o uso deANDentre elas. ComOR, a consulta retornaria audiências que são futuras ou que pertencem às varas 1, 2 ou 3, mesmo que não sejam futuras. - (E) Incorreta:
CURDATE()retorna apenas a data atual (sem a hora), e a questão pede "posterior ao dia e hora atuais". Além disso, a sintaxeIN (1..3)está incorreta; o correto seriaIN (1, 2, 3).
Fonte: FCC TRT15 2024 Analista Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.