Pular para o conteúdo principal

Questão de Banco de Dados — PostgreSQL — VUNESP 2023

Banco de DadosPostgreSQL
Código
vu196231
Banca
VUNESP
Órgão
Pref Sorocaba
Ano
2023
Cargo
Tec ( )
Considere o seguinte comando emitido por meio do sistema gerenciador de banco de dados PosgreSQL (v. 14):   SELECT ‘teste de’ || ‘comando’;   Tal comando terá como resultado a sequência:
  1. Ateste de comando
  2. Bteste decomando
  3. Cteste de comando
  4. Dteste de comando
  5. Eteste de comando
Revelar gabarito e comentário

GabaritoB — teste decomando

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Operador de concatenação (||) no PostgreSQL

Gabarito: letra B. No PostgreSQL, o operador || é o operador de concatenação de strings, que une o conteúdo das duas strings sem adicionar espaços entre elas. Assim, 'teste de' || 'comando' resulta em 'teste decomando'. A alternativa B é a única que apresenta exatamente essa sequência, sem espaços extras.

O operador || é um operador binário que concatena duas strings, produzindo uma nova string que é a junção da primeira com a segunda, na ordem em que aparecem. Ele não insere nenhum caractere separador — se você quiser um espaço entre as palavras, precisa incluí-lo explicitamente em uma das strings (por exemplo, 'teste de ' || 'comando' ou 'teste de' || ' comando').

No comando do enunciado, a primeira string é 'teste de' (termina com a letra 'e') e a segunda é 'comando' (começa com a letra 'c'). A concatenação simples junta as duas, resultando em 'teste decomando' — exatamente como aparece na alternativa B.

Esse comportamento é padrão na linguagem SQL e também em outras linguagens de programação, como JavaScript (operador +) e Python (operador +). No PostgreSQL, o operador || também pode ser usado para concatenar arrays, mas para strings o efeito é o descrito.

A pegadinha desta questão está em confundir o operador || com uma concatenação que adiciona espaços automaticamente. Muitos candidatos, por associação com a linguagem natural, esperam que a junção de 'teste de' e 'comando' produza 'teste de comando' (com espaço). No entanto, o operador || não insere espaços — ele apenas une as strings exatamente como estão. Para obter o espaço, seria necessário incluí-lo em uma das strings, como em 'teste de ' || 'comando'.

Guarde essa regra: concatenação com || não adiciona espaços. É exatamente esse detalhe que separa a alternativa correta (B) das demais.

Alternativa A — ❌ Incorreta

Apresenta a sequência com uma quebra de linha entre 'teste de' e 'comando'. Isso não corresponde ao resultado da concatenação, pois o operador || não insere quebras de linha. A concatenação produz uma string contínua, sem caracteres de nova linha.

Alternativa B — ✅ Correta ⟵ GABARITO

A concatenação de 'teste de' com 'comando' resulta em 'teste decomando', exatamente como apresentado. Não há espaços adicionais, pois o operador || apenas une as strings.

Alternativa C — ❌ Incorreta

Apresenta a sequência com quebras de linha entre as palavras. O operador || não insere quebras de linha, portanto o resultado não pode conter esses caracteres.

Alternativa D — ❌ Incorreta

Apresenta a sequência com um espaço entre 'teste de' e 'comando'. O operador || não adiciona espaços automaticamente; para obter esse resultado, seria necessário incluir o espaço em uma das strings, como em 'teste de ' || 'comando'.

Alternativa E — ❌ Incorreta

Idêntica à alternativa D, apresenta a sequência com um espaço entre as palavras. Pelo mesmo motivo, está incorreta.

NÃO CAIA NESSA!

A banca explora a confusão entre o operador || e a concatenação com espaço automático. Muitos candidatos escolhem as alternativas D ou E, que mostram 'teste de comando', por associarem a concatenação à junção natural com espaço. Lembre-se: o || une as strings exatamente como estão, sem inserir espaços. Para obter o espaço, ele deve estar presente em uma das strings.

PEGA ESSA DICA!

Em questões sobre concatenação de strings, verifique sempre se há espaços nas strings originais. Se as strings não contêm espaços nas bordas, o resultado não terá espaços entre elas. Essa dica vale para qualquer SGBD que siga o padrão SQL.

Gabarito: letra B

Link permanente: /questoes/vu196231