Gente gostaria de um exemplo de como listar os serviços utilizados para um cliente qualquer x que tenha um cachorro com nome qualquer y

Olha não estou conseguindo fazer precisava de um exemplo. So não consigo fazer esta consulta
Listar os serviços utilizados para um cliente qualquer x que tenha um cachorro com nome qualquer y.

create database pet;
use pet;

CREATE TABLE CLIENTE(
cod_cliente int primary key auto_increment,
nome varchar(100) not null,
telefone int,
cpf varchar(14) not null unique,
cel varchar(15) not null,
endereco varchar(100)not null
);

CREATE TABLE ANIMAL(
cod_animal int primary key auto_increment,
nome_animal varchar(100) not null,
sexo SET('M','F'),
idade int,
raca varchar (50)not null,
data_cadastro datetime not null 
);

CREATE TABLE FUNCIONARIO(
cod_funcionario int primary key auto_increment,
nome_funcionario varchar(100) not null,
cpf varchar(14) not null unique,
sexo SET('M','F'),
especialidade varchar(30) DEFAULT'tosador',
cel varchar(15) not null,
endereco varchar(100)not null
);

CREATE TABLE SERVICO_ANIMAL(
cod_cliente int,
cod_animal int,
cod_funcionario int,
FOREIGN KEY(cod_animal) REFERENCES ANIMAL(cod_animal),
FOREIGN KEY(cod_funcionario) REFERENCES FUNCIONARIO(cod_funcionario),
FOREIGN KEY(cod_cliente) REFERENCES CLIENTE(cod_cliente)
);

#describe ;
INSERT INTO cliente(nome,telefone,cpf,cel,endereco) VALUES 
('roberto','32265849','78945622','999282127','rua andradas'),
('reginaldo','32228949','78989437','999282237','rua esmeralda'),
('ana paula','32547165','78254883','999456821','rua juca'),
('dagoberto','32123654','78854713','999126845','rua tereza'),
('roberto','22132547','78456927','99987594600','rua santana');

INSERT INTO animal(nome_animal,sexo,idade,raca,data_cadastro) VALUES 
('toby','F','5','poodle','2017-06-21'),
('neco','M','2','chow chow','2017-07-27'),
('nick','M','1','pastor','2017-10-27'),
('luqui','M','7','salsicha','2017-04-26'),
('chica','F','15','pinther','2017-10-17');

INSERT INTO funcionario(nome_funcionario,cpf,sexo,especialidade,cel,endereco) VALUES 
('roberta','0075555849','F','tosador','(52)355555569','rua dos andres'),
('roberto','0032265849','M','tosador','(51)548987469','rua gonalves'),
('joao','0032846569','M','tosador','(51)355956237','rua terneira'),
('reginaldo','0785465849','M','tosador','(51)355978946','rua assis'),
('reginaldinha','0756789789','M','tosador','(51)355546786','rua nogueira');

Bom dia,

Para conseguir o que quer, vai precisar fazer um INNER JOIN ou LEFT ou RIGHT, sei lá, com as tabelas CLIENTE X SERVICO_ANIMAL X ANIMAL

Isso pq, a unica forma de vc ligar um cliente ao seu pet é colocar nessa ligação a tabela SERVICO_ANIMAL, que é o unico recurso que pode te ajudar a obter tais informações de um e de outro. Exemplo:

SELECT * FROM CLIENTE AS C
INNER JOIN SERVICO_ANIMAL AS SA
ON C.COD_CLIENTE = SA.COD_CLIENTE
INNER JOIN ANIMAL AS A
ON A.COD_ANIMAL = SA.COD_ANIMAL
WHERE C.CLIENTE = 'JÃO'
AND A.NOME_ANIMAL = 'MATADOR';
1 curtida

Dei uma olhada nas tuas tabelas e tirei algumas conclusões. A primeira é que aparentemente um serviço prestado a um animal (tabela SERVICO_ANIMAL), sempre vai possuir os valores de cliente e de animal, certo? (provavelmente de funcionário também). Sendo assim, acho que tu poderia fazer a consulta utilizando INNER JOIN, porque os registros sempre vão estar referenciando a outra tabela, ou seja, nunca serão nulos. Partindo desse princípio, é possível montar essa consulta:

SELECT SA.*
FROM SERVICO_ANIMAL SA
INNER JOIN CLIENTE C
ON C.cod_cliente = SA.cod_cliente
INNER JOIN ANIMAL A
ON A.cod_animal = SA.cod_animal
WHERE
-- Aqui depende, voce pode pesquisar por qualquer campo do cliente
(C.cod_cliente = ? OR C.nome LIKE ?)
AND
A.nome_animal LIKE ?

Algumas observações quanto as tuas tabelas: ao meu ver, é interessante evitar nomear os campos de maneira redundante, por exemplo: a chave primária da tabela animal poderia ser id ou codigo, não precisaria conter a palavra animal. Isso facilita na hora de escrever as queries!