Modelagem UML

Modelagem UML com Mysql, criando tabelas e fazendo subqueries.

Criação do banco e conexão.
create database bdmodela1;

use bdmodela1;
Criação das tabelas cliente e detalhescliente.
create table cliente(
	id int primary key,
	nome varchar (50),
	sexo enum ('m','f'),
	email varchar (50)
);
	
create  table detalhescliente(
	idDetalhes int primary key,
	descricacao varchar (50),
	idfk int,
	foreign key(idfk) references cliente(id)
	on delete cascade 
);
Inserindo dados na tabela cliente e pesquisando todos.
insert into cliente values (10,'black-heart','f','ju@gmail.com');
insert into cliente values (20,'isaque','m','isaque@gmail.com'); 
 
select*from cliente;
Inserindo dados na tabela detalhescliente e pesquisando todos.
insert into detalhescliente values (100,'aluna muito dedicada',10);
insert into detalhescliente values (120,'aluno bisonho',20);

select*from detalhescliente;		   
	
Criando a tabela setor, inserindo dados e pesquisando.
create table setor(
	id int primary key auto_increment,
	vendedor varchar (15),
	valor float,
	supervisao varchar (15),
	sexo enum ('m','f') not null
);
	
insert into setor values (null,'isaque',500,'lu','m');
insert into setor values (null,'jan100',800,'lu','m');
insert into setor values (null,'wesley',1200,'lu','m');
insert into setor values (null,'gabi',600,'fernando','f');
insert into setor values (null,'black-heart',1000,'fernando','f');
insert into setor values (null,'joao',1500,'fernando','m');
	 
select * from setor;
							
Contando a quantidade de dados na tabela.
select count(*) from setor;
					
Contando e agrupando os supervisores da tabela
select count(*),supervisao  from setor
group by supervisao;
						
Mostra o maior valor de venda dos supervisores.
select valor as maiorvenda, vendedor, supervisao from setor
where  valor  in (select max(valor) from setor 
where supervisao='fernando');
							
Mostra o maior valor de venda de cada vendedor.
select s.nome, s.maiorvalor from (
	select vendedor as nome, max(valor) as maiorvalor from setor
		group by (vendedor)
	)s;
								
Mostra o maior valor de venda do setor.
select max(valor) as maiorvalor from setor; 
									
Faça a soma de dois numeros -> chama de soma a partir da soma gerar a media...
create table calc(
	numero1 int, 
	numero2 int
	);
		
	insert into calc values (10,20);
	
		select z.media from (
		select x.soma/2 as media from (
			select (numero1 + numero2) as soma from calc
	)x
	)z;
					
Para saber qual é o numero maior.
select 
case 
	when  numero1 > numero2 then "n1 maior"
	when  numero2 > numero1 then "n2 maior"
	else
	"iguais"
end as maior, 
numero1, numero2 from calc;
						
Soma e mostra qual o maior valor.
select    tabela.maiorValor, tabela.soma, tabela.numero1, tabela.numero2    from   (
	select 
			case 
			when  numero1 > numero2 then "n1 maior"
			when  numero2 > numero1 then "n2 maior"
			else
			"iguais"
end as maiorValor, (numero1 + numero2) as soma, numero1, numero2 
	from calc
)tabela;