Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Para tornar a coisa menos complicado eu imaginei em relacionar duas tabelas e ordenar a posição das linhas com a tabela secundária:
O que eu quero fazer é o seguinte: No meu site, para cada corrida de F1 há uma tabela mostrando o resultado final da última corrida, como por exemplo esta aqui:
http://www.superdanilof1page.com.br/circuitos/circuitos-da-formula-1-bahrein.php
Nela contém a posição que o piloto terminou a corrida o nome dele e equipe: (posição/piloto/equipe).
A minha ideia é fazer isso em PHP e BD para facilitar a atualização em cada corrida do ano, daí ordenaria ela por posição que vai de 1 a 22.
Na ideia original era fazer 21 tabelas repetidas, apenas alterando o nome dela de acordo com o pais (circuito_australia, circuito_brasil...etc)
Daí depois eu pensei em criar uma só tabela (piloto/equipe) e fazer uma segunda com as posições (posição). Daí com essa subtabela só de posições controlar a ordem de posição da tabela principal dos pilotos para cada corrida. Será que dá para fazer isso com php?
Eu não sei se consegui explicar direitinho a ideia. Se tiver muito dificil entender, deixa quieto...eu vou tentando dar um jeito aqui....
Valeuu
Sobre a ordenação é só aplicar no exemplo a clausula ORDER BY.
Ex:
SELECT
corrida.nome
,posicoes.posicao
,piloto.nome
FROM
posicoes
INNER JOIN corrida ON(
posicoes.corrida_id = corrida.id
)
INNER JOIN piloto ON(
posicoes.piloto_id = piloto.id
)
WHERE
corrida.id = 1 /Apenas da corrida de Bahrein /
ORDER BY posicao
/*
nome posicao nome
-------------------------------------- ------- --------------
Grande Prêmio do Bahrein de Formula 1 1 Felipe Massa
Grande Prêmio do Bahrein de Formula 1 3 Nico Rosberg
*/
Assim será ordenado sempre pela posicao da corrida.
Outra dica que seria legal é adicionar um campo DATE dentro da tabela corrida
Assim você poderia filtrar as corridas por datas.
Ex:
Grande Prêmio do Bahrein de Formula Dia X
Grande Prêmio do Bahrein de Formula Dia Y
Ps:
Já viu essa API:
???
Será q ela funciona? haha
Rapaiz...se exportar esse codigo inteiro la no MySQL ele já funcionaria, para mim estudar ele? É que por código eu não entendo muito :)
E desculpe, meu colega, pela demora...eu vou ver aqui
Todos os exemplos que dei são funcionais (vide resultado das query/selects logo abaixo de cada Insert)
A ideia era dar um exemplo diretamente no seu contexto, porem o estudo e dedicação por sua parte ainda é necessário, exemplo o link que mandei)
SQL é um conhecimento muito importante no mundo em geral, já conheci bancários que tinham conhecimento profundo em sql e sabiam fazer consultas que traziam informação de grande valor, mesmo não sendo DBA ou Dev.
Quando você fala 'lá no mysql' significa que você não tem um ambiente local para fazer teste?
Recomendo fortemente subir um servidorzinho na sua maquina local para poder fazer testes e brincar sem se preocupar
Ex:
Abraço e bons estudos
É...eu tinha...eu usava o Wamp eu acho...na verdade eu até esqueci o nome do servidor de teste que eu usava aqui, mas eu parei. Mas pode ser eu vou ver aqui...
Código SQL eu não manjo nada... é que eu uso muito pouco sabe? Mesmo quando eu aprendo, a falta de uso faz eu esquecer...
Olá!
Só hoje que estou olhando mais a fundo sua ideia.
Deixa eu ver se entendi....
Ao inves de criar uma tabela para cada pais....eu criaria uma tabela piloto...e em cada coluna um país..e nele eu colocaria a posição que cada um terminou...é isso? Tipo:
Pais| Australia | China | Japão
Felipe Massa| 1 | 6 | 3
É isso?
>
Em 22/03/2017 at 15:21, gabrieldarezzo disse:
Recomendo a leiutra:
>
1 hora atrás, gabrieldarezzo disse:
Hehe ja vi que não é....
Então...eu agradeço por sua ajuda viu? Eu acho que eu não fiz exatamente como você me sugeriu, mas a sua dica me clareou uma forma de fazer isso de um jeito que vai ser útil para fazer outras coisas com os mesmos dados no futuro....
Muito obrigado viu!
Pow acho que seria legal utilizar o banco relacional de forma relacional.
>
Citar
Na ideia original era fazer 21 tabelas repetidas
NÃOOOO! n faz isso hahaha
Faz mas sentido você ir criando individualmente as entidades.
Ex:
Uma tabela para o:
Piloto
Pais
Corrida
Posicoes (Que possui a referencia das tabelas acimas)
Recomendo a leiutra:
https://pt.wikipedia.org/wiki/Normalização_de_dados
Fiz um exemplo aqui rapidinho (sem FK, porem é muito bom para performa e persistência trabalhar com FK)
/ Cada Piloto é de um pais... // Exemplo pra pegar os Pilotos de cada pais... /
FROM
piloto
INNER JOIN pais ON(
pais.id = piloto.pais_id
)
/*
/Veja q apenas referenciei o pais Bahrein (id - 3)/nome nome
------------ ----------
Felipe Massa Brasil
Nico Rosberg Alemanha
*/
/*
FELIPE FELIPE FELIPEEEEE MASAAAAAAAA EM PRIMEIRO LUGAR NA CORRIDA DE Bahrein!!!!!
*/
INSERT INTO posicoes (piloto_id, corrida_id, posicao) VALUES(1, 1, 1);
/Nasr chegou em 2 /
INSERT INTO posicoes (piloto_id, corrida_id, posicao) VALUES(2, 1, 3);
/Nico chegou em 3 /
FROM
posicoes
INNER JOIN corrida ON(
posicoes.corrida_id = corrida.id
)
INNER JOIN piloto ON(
posicoes.piloto_id = piloto.id
)
/*
nome posicao nome
-------------------------------------- ------- --------------
Grande Prêmio do Bahrein de Formula 1 1 Felipe Massa
Grande Prêmio do Bahrein de Formula 1 3 Nico Rosberg
*/