An open API service indexing awesome lists of open source software.

https://github.com/marcosfshirafuchi/devsuperior-bee-uri-2602-busca-simples

DEVSUPERIOR : Java Spring Professional - BEE/URI 2602
https://github.com/marcosfshirafuchi/devsuperior-bee-uri-2602-busca-simples

bancodedados beecrowd-solutions devsuperior java jpql maven maven-plugin maven-pom nelio-alves nelioalves poo postgresql relacionamentos spring spring-boot springboot springdata-jpa springdatajpa sql uri-online-judge

Last synced: about 1 month ago
JSON representation

DEVSUPERIOR : Java Spring Professional - BEE/URI 2602

Awesome Lists containing this project

README

        

# image-2024-07-01-T11-45-10-371-Z Java Spring Professional - BEE/URI 2602

#### Desenvolvido na linguagem Java por:
- [Marcos Shirafuchi](https://github.com/marcosfshirafuchi)
## Formação Desenvolvedor Moderno Módulo: Back end
Capítulo: JPA, consultas SQL e JPQL


Aula: URI 2602 - Elaborando a consulta

## Exercício: BEE/URI 2602

Exercício de SQL da plataforma do BEE: 2605


https://judge.beecrowd.com/pt/problems/view/2602

Select Básico


Sua empresa está fazendo um levantamento de quantos clientes estão cadastrados nos estados, porém, faltou levantar os dados do estado do Rio Grande do Sul.

Então você deve Exibir o nome de todos os clientes cujo estado seja ‘RS’.

## Esquema

### customer



customers
customers


Coluna
Tipo




id (PK)

numeric


name
varchar


street
varchar


city
varchar


state
char


credit_limit
number


## Tabelas

### customers
| id | name | street | city | state | credit_limit |
| -- | -------------------------- | ------------------------- | -------------- | ------ | ------------- |
| 1 | Pedro Augusto da Rocha | Rua Pedro Carlos Hoffman | Porto Alegre | RS | 700,00 |
| 2 | Antonio Carlos Mamel | Av. Pinheiros | Belo Horizonte | MG | 3500,50 |
| 3 | Luiza Augusta Mhor | Rua Salto Grande | Niteroi | RJ | 4000,00 |
| 4 | Jane Ester | Av 7 de setembro | Erechim | RS | 800,00 |
| 5 | Marcos Antônio dos Santos | Av Farrapos | Porto Alegre | RS | 4250,25 |

## Exemplo de Saída

| name |
| ------------------------- |
| Pedro Augusto da Rocha |
| Jane Ester |
| Marcos Antônio dos Santos |

## Principais Tecnologias

- Java 21 : Utilizaremos a versão LTS mais recente do Java para tirar vantagem das últimas inovações que essa linguagem robusta e amplamente utilizada oferece;
- Spring Boot 3 : Trabalharemos com a mais nova versão do Spring Boot, que maximiza a produtividade do desenvolvedor por meio de sua poderosa premissa de autoconfiguração;
- Spring Data JPA: Exploraremos como essa ferramenta pode simplificar nossa camada de acesso aos dados, facilitando a integração com bancos de dados SQL;
- PostgreSQL: Banco de dados SQL .

### Código SQL do URI/BEE 2602

```
--- URI Online Judge SQL
--- Copyright URI Online Judge
--- www.urionlinejudge.com.br
--- Problem 2602

CREATE TABLE customers (
id NUMERIC PRIMARY KEY,
name CHARACTER VARYING (255),
street CHARACTER VARYING (255),
city CHARACTER VARYING (255),
state CHAR (2),
credit_limit NUMERIC
);

INSERT INTO customers (id, name, street, city, state, credit_limit)
VALUES
(1, 'Pedro Augusto da Rocha', 'Rua Pedro Carlos Hoffman', 'Porto Alegre', 'RS', 700.00),
(2, 'Antonio Carlos Mamel', 'Av. Pinheiros', 'Belo Horizonte', 'MG', 3500.50),
(3, 'Luiza Augusta Mhor', 'Rua Salto Grande', 'Niteroi', 'RJ', 4000.00),
(4, 'Jane Ester', 'Av 7 de setembro', 'Erechim', 'RS', 800.00),
(5, 'Marcos Antônio dos Santos', 'Av Farrapos', 'Porto Alegre', 'RS', 4250.25);


/* Execute this query to drop the tables */
-- DROP TABLE customers; --
```

## Resolução do exercício em SQL no URI/BEE 2602

```
SELECT name FROM customers WHERE state = 'RS';
```

## Código do SQL no Java

```
@Query(nativeQuery = true,value = "SELECT name FROM customers WHERE UPPER(state) = UPPER(:state)")
List search1(String state);
```

## Código do JPQL no Java

```
@Query("SELECT new com.devsuperior.uri2602.dto.CustomerMinDTO(obj.name) FROM Customer obj WHERE UPPER(obj.state) = UPPER(:state)")
List search2(String state);
```