Alfapt Posted May 5, 2015 at 03:00 PM Report Share #582504 Posted May 5, 2015 at 03:00 PM (edited) Boas, eu estou a fazer um site que consegue gerir marinas, estou numa fase em que dou aos utilizadores a possibilidade de efetuarem reservas em amarrações. As Amarrações têm um comprimento, uma largura e uma profundidade, tal como os barcos e eu queria que quando o meu cliente escolhe-se o barco, ele compara-se as medidas de ambas as tabelas e me disse-se se é possivel, mas não estou a conseguir e as maneiras como estou a tentar fazer não me estão a levar a nenhum lado, alguem tem uma ideia e me pode ajudar? Tenho uma tabela Barcos ___ CREATE TABLE Barcos ( Id_Barco INT AUTO_INCREMENT , Id_Cliente INT NOT NULL, TipoBarco INT (3), NomeBarco VARCHAR (45) NOT NULL, Comprimento NUMERIC (6,2), Largura NUMERIC (5,2), ProfundidadeCasco NUMERIC (5,2), PRIMARY KEY (Id_Barco), foreign key (Id_Cliente) references Clientes(Id_Cliente), foreign key (TipoBarco) references TiposBarcos(TipoBarco) ); E outra de Amarrações __ CREATE TABLE Amarracoes ( Id_Amarracao INT AUTO_INCREMENT , Id_Pontao INT NOT NULL, Profundidade NUMERIC (3,2), Comprimento NUMERIC (6,2), Largura NUMERIC (5,2), Estado INT (2) NOT NULL, Preco NUMERIC (6,2) NOT NULL, PRIMARY KEY (Id_Amarracao), foreign key (Id_Pontao) references Pontoes(Id_Pontao), foreign key (Estado) references Estados(Estado) ); Edited May 5, 2015 at 04:13 PM by apocsantos tag code + geshi Link to comment Share on other sites More sharing options...
RuiAlmeida20 Posted May 5, 2015 at 03:38 PM Report Share #582505 Posted May 5, 2015 at 03:38 PM (edited) A meu ver a melhor maneira de fazeres isso, era criares outra tabel que ligue os barcos e as amarracoes... Do tipo, Tabela ba_compativeis: id_row | id_amarracao | id_barco Mas tambem podes fazer uma query com inner joins... Edited May 5, 2015 at 03:40 PM by RuiAlmeida20 Link to comment Share on other sites More sharing options...
help Posted May 5, 2015 at 05:50 PM Report Share #582512 Posted May 5, 2015 at 05:50 PM (edited) Se quiser só comparar os valores pode fazer assim SELECT barcos.Comprimento, amarracoes.Comprimento, barcos.Largura, amarracoes.Largura, barcos.ProfundidadeCasco, amarracoes.Profundidade FROM barcos, amarracoes WHERE barcos.Comprimento=amarracoes.Comprimento && barcos.Largura=amarracoes.Largura && barcos.ProfundidadeCasco=amarracoes.Profundidade Os resultados que forem iguais em ambas as tabelas serão mostrados. Edited May 5, 2015 at 07:40 PM by apocsantos geshi Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now