Artigo

A Linguagem SQL para SEFAZ ES: Consultas e Operadores Condicionais

Confira neste artigo um resumo sobre a Linguagem SQL para o concurso da SEFAZ ES.

Linguagem SQL
Linguagem SQL

Olá, pessoal! Tudo bem com vocês?

O tão aguardado edital do concurso da Secretaria de Estado da Fazenda do Espírito Santo (SEFAZ ES), para o cargo de Auditor Fiscal, finalmente foi publicado.

Este certame está oferecendo 150 vagas para este cargo, com remuneração inicial de R$ 12.492,19. Nada mal, não é mesmo?

A temida banca FGV é a organizadora deste certame, desse modo, é muito importante que a sua preparação seja de alto nível, totalmente focada nesta banca.

A disciplina de Tecnologia da Informação veio bastante pesada, com tópicos que não são tão comuns de serem cobrados na área fiscal. Desse modo, no artigo de hoje, o intuito é realizar um estudo sobre um assunto muito importante desta disciplina e que certamente estará na sua prova da SEFAZ ES, a Linguagem SQL.

Dada a sua importância, dividiremos este tema em dois artigos, sendo que neste serão discutidos os seguintes tópicos:

  • A Linguagem SQL;
  • Consulta SELECT;
  • Cláusula WHERE;
  • Operadores Lógicos AND, OR e NOT;
  • BETWEEN;
  • LIKE;
  • IN.

A Linguagem SQL

Dando início ao nosso artigo para a SEFAZ ES, a primeira pergunta que vem à mente é: O que é a Linguagem SQL?

Bom, a Linguagem SQL (Linguagem de Consulta Estruturada) é uma importante linguagem computacional utilizada para realizar o acesso e a manipulação de banco de dados relacionais.

Ela possui diversos comandos, seja tanto para criar, alterar ou excluir tabelas, como para manipular e acessar os seus registros, além de outras diversas funções. Ela é dividida é alguns grupos, como o:

  • DML (Linguagem de Manipulação de Dados)

Este grupo é utilizado para realizar consultas, inclusões, exclusões e alterações dos registros das tabelas, ou seja, ele é utilizado para consultar e manipular os dados que estão contidos nas tabelas, sendo este o tema que será estudado neste artigo. Alguns dos comandos utilizados são SELECT, INSERT, UPDATE e DELETE.

  • DDL (Linguagem de Definição de Dados)

Enquanto o DML é utilizado para manipular os dados que estão inseridos nas tabelas, o DDL é usado para definir estas tabelas, através da sua criação, alteração ou exclusão. Os comandos utilizados são CREATE, ALTER e DROP.

  • DCL (Linguagem de Controle de Dados)

Aqui é realizado o controle de quem pode ter acesso para manipular dados dentro de um banco de dados, através de mecanismos de autorização e licenças para os usuários. Os comandos mais utilizados aqui são o GRANT e REVOKE.

  • DTL (Linguagem de Transação de Dados)

Este grupo é responsável pelo tratamento das transações realizadas em um banco de dados. Os principais comandos desta linguagem são o COMMIT e o ROLLBACK.

Agora iremos aos comandos específicos da linguagem SQL, mais precisamente sobre funções do DML, de consulta de dados, sendo eles os mais cobrados no conteúdo programático do edital da SEFAZ ES.

Consulta SELECT

Esta é uma das principais funções do DML, sendo ela utilizada para acessar as informações solicitadas pelo usuário em um banco de dados. Todas as demais funções estudadas neste artigo e que serão apresentadas mais adiante são utilizadas juntamente com o comando SELECT, de modo a aprimorar a consulta de dados realizada pelo usuário.

A sintaxe mais básica do comando SELECT é:

SELECT coluna1, coluna2, …

FROM nome_tabela

A fórmula acima indica que o usuário poderá selecionar colunas específicas de uma tabela, de maneira que esses dados sejam visualizados na tela. O comando FROM é utilizado com o SELECT, de modo a identificar qual tabela será utilizada para realizar a consulta dos dados.

Vamos a um exemplo? Suponha a seguinte tabela ‘Aluno’ abaixo em um banco de dados, a qual será utilizada como referência para todos os tópicos neste artigo:

Tabela Principal
Tabela Principal

Caso um usuário queira consultar apenas a coluna em que há o nome do aluno, juntamente com sua matrícula, o comando a ser utilizado seria:

SELECT matrícula, nome_aluno

FROM Aluno

Assim, o resultado da consulta será:

Comando SELECT
Comando SELECT

Vocês devem ter percebido que todos os valores da tabela dessas duas colunas foram retornados, inclusive os duplicados. Para remover esses valores duplicados, retornando apenas um registro de cada, utiliza-se o comando DISTINCT, como abaixo:

SELECT DISTINCT matrícula, nome_aluno

FROM Aluno

Assim, serão retornados os seguintes valores:

Comando SELECT DISTINCT
Comando SELECT DISTINCT

Há situações em que o usuário quer retornar todas as colunas, sem necessariamente especificar uma. Desse modo, utiliza-se o asterisco (*), como abaixo:

SELECT *

FROM Aluno

A fórmula acima permite que todas as colunas da tabela Aluno sejam acessadas e retornadas.

Tranquilo, não é? Vamos avançar.

Cláusula WHERE

Durante uma consulta de dados por um usuário, geralmente ele está procurando por informações específicas. Desse modo, há a utilização do comando WHERE (ONDE, em inglês), juntamente com alguns comandos específicos. Alguns desses comandos podem ser visualizados abaixo:

Condições
Condições

A sintaxe utilizada neste caso é:

SELECT coluna1, coluna2, …

FROM nome_tabela

WHERE condição

Por exemplo, vamos supor que há a necessidade de procurar todos os alunos que apenas cursam a disciplina de Português. Desse modo, podemos utilizar a seguinte fórmula, através do operador de igual (=):

SELECT *

FROM Aluno

WHERE disciplina = ‘Português’

Assim, será retornada a seguinte tabela:

Comando WHERE
Comando WHERE

Operadores Lógicos AND, OR, NOT

A cláusula WHERE pode também ser utilizada com mais de uma condição. Para isso, podem ser empregados os comandos AND ou OR.

O comando AND é utilizado para retornar valores em que todas as condições dispostas sejam verdadeiras. Por exemplo, caso o usuário queira retornar as linhas em que o nome do aluno seja Caio e o nome da disciplina seja Português, de maneira simultânea, usa-se o seguinte comando:

SELECT *

FROM Aluno

WHERE nome_aluno=’Caio’ AND disciplina=’Português’

Assim, a seguinte tabela será retornada:

AND
Comando AND

Perceba que ela retornou a linha em que as duas condições são preenchidas simultaneamente.

Porém, também podem ser inseridas duas condições em que será retornado todas as linhas em que cada uma delas esteja presente, mas não necessariamente as duas de maneira simultânea. Para isso, utiliza-se o comando OR. Assim, se utilizarmos a fórmula anterior, substituindo AND por OR, teríamos:

SELECT *

FROM Aluno

WHERE nome_aluno=’Caio’ OR disciplina=’Português’

OR
Comando OR

Desse modo, foram retornadas todas as linhas em que o nome do aluno seja Caio, bem como as linhas em que a disciplina seja Português.

PARA FIXAR:

AND: retorna todos os registros em que todas as condições sejam verdadeiras, simultaneamente.

OR: retorna todos os registros em que pelo menos uma das condições seja verdadeira.

Já o NOT é utilizado quando se quer apenas aqueles registros que não satisfazem uma determinada condição. Por exemplo, com ele, é possível pesquisar todos os registros em que a nota não seja 8. Assim, pode-se utilizar a seguinte sintaxe, obtendo a tabela abaixo:

SELECT *

FROM Aluno

WHERE NOT nota=8

Comando NOT
Comando NOT

FIQUE ATENTO: É possível utilizar mais de um AND ou um OR em uma mesma fórmula, como:

SELECT *

FROM Aluno

WHERE nome_aluno=’Caio’ OR disciplina=’Português’ OR matrícula=444

BETWEEN

O BETWEEN … AND é utilizado para procurar dados que estão dentro de um determinado intervalo de valores. A sua estrutura é a seguinte:

SELECT coluna1, coluna2, …

FROM nome_tabela

WHERE coluna BETWEEN valor1 AND valor2

Vamos supor que esteja sendo procurado os registros em que as notas estão dentro do intervalo de 2 e 6. Assim, teremos:

SELECT *

FROM Aluno

WHERE nota BETWEEN 2 AND 6

BETWEEN
Comando BETWEEN

IN

Esta condição é utilizada para procurar valores específicos dentro de uma coluna. Sua estrutura é:

SELECT coluna1, coluna2, …

FROM nome_tabela

WHERE coluna IN (valor1, valor2, valor3,…)

Assim, vamos supor que queremos saber quais alunos possuem os números de matrícula 111, 222 e 444, sem duplicidades. Desse modo, podemos digitar:

SELECT DISTINCT matrícula, nome_aluno

FROM Aluno

WHERE matrícula IN (111,222,444)

Assim, a tabela abaixo será retornada:

IN
Comando IN

LIKE

Este já é um operador um pouco mais complexo, mas nada de outro mundo. Ele é utilizado quando se quer encontrar registros específicos dentro de um padrão de escrita. Por exemplo, seria possível encontrar apenas os alunos que possuem nome que comece com a letra C ou nomes que terminem com a letra O? Sim, seria possível através do comando LIKE.

O comando LIKE é utilizado através dos caracteres de porcentagem (%) e do underline (_).

Porcentagem (%): Por exemplo, caso o usuário queira encontrar palavras que comecem com a letra A, sem uma quantidade específica de letras, utiliza-se: ‘A%’.

Underline (_): Caso o usuário queira encontrar palavras que comecem com a letra A, mas que tenha obrigatoriamente apenas 5 caracteres, utiliza-se: ‘A_ _ _ _’.

Perceberam a diferença? O símbolo da porcentagem é utilizado quando não se tem definido o número de caracteres dos dados a serem retornados. Já o símbolo do underline é utilizado em situações em que se procura dados com determinado número de caracteres, sendo que cada símbolo inserido corresponde a um caractere. Abaixo podemos ver diversos comandos possíveis:

Padrões LIKE
Padrões LIKE

Para utilizar este comando, usa-se a seguinte estrutura:

SELECT coluna1, coluna2, …

FROM nome_tabela

WHERE coluna LIKE padrão

Agora que você aprendeu a sintaxe e como usar o LIKE, vamos a um exemplo:

Suponha que o usuário queira que seja retornado apenas as linhas da tabela em que o nome do aluno comece com a letra C, independentemente da quantidade de caracteres. Desse modo, pode-se utilizar o seguinte comando:

SELECT *

FROM Aluno

WHERE nome_aluno LIKE ‘C%’

Desse modo, teremos o seguinte resultado:

LIKE
Comando LIKE %

Agora, suponha que apenas seja importante retornar as linhas cujos nomes dos alunos também comecem com a letra C, mas que tenham obrigatoriamente 4 caracteres. Assim, usa-se:

SELECT *

FROM Aluno

WHERE nome_aluno LIKE ‘C_ _ _’

Comando LIKE
Comando LIKE _

Finalizando

Pessoal, chegamos ao fim do nosso primeiro artigo sobre a Linguagem SQL para o concurso da SEFAZ ES.

Procuramos identificar os principais tópicos e que possuem uma maior chance de serem cobrados.

Caso queira se preparar para chegar competitivo nesta prova, invista nos cursos para a SEFAZ ES do Estratégia Concursos. Lá você encontrará aulas completas e detalhadas, com os melhores professores do mercado.

Conheça também o Sistema de Questões do Estratégia. Afinal, a única maneira de consolidar o conteúdo de maneira satisfatória é através da resolução de questões.

Bons estudos e até a próxima.

Cursos e Assinaturas

Prepare-se com o melhor material e com quem mais aprova em Concursos Públicos em todo o país!

Assinatura de Concursos

Assinatura de 1 ano ou 2 anos

Sistema de Questões

Assinatura de 1 ano ou 2 anos

Concursos Abertos

mais de 15 mil vagas

Concursos 2021

mais de 17 mil vagas

Deixe seu comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Veja os comentários
  • Nenhum comentário enviado.