Jump to content
manoaj

Select em três tabelas diferentes

Recommended Posts

Boa tarde pessoal!

Tenho As seguintes tabelas no meu banco:

 

Tabela->clientes(Essa tabela guarda os clientes)

Tabela-> Produtos (Essa tabela guarda os  produtos)

Tabela -> Tamanhos (Essa tabela guarda os tamanhos e os preços)

Tabela->Relação de tamanho (Essa tabela guarda a relação dos tamanhos que cada produto pode ter)

Tabela-> Pedidos (Essa tabela guarda o pedido do cliente com tamanho e quantidade)

 

E o problema e o seguinte: Como q eu faço uma seleção nessas tabelas para saber o valor total do pedido do meu cliente com base no tamanho e quantidade escolhida?

Share this post


Link to post
Share on other sites

Publique as estruturas das tabelas.

 

Creio que falte uma : itens de pedido , um pedido pode ter mais de um produto/tamanho

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Camilavip
      Oi, tenho um flip para virar a imagem, bem pequeno e funcional, mas ao colocar um rodapé, ele simplesmente invade esse rodapé
      Creio que tem haver alguma coisa com o position: absolute, mas não entendo nada de css
       
      <!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title></title> <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css"> </head> <body> <!-- CSS DO FLIP --> <style> .flip-container:hover .flipper{ transform: rotateY(180deg); /* se quiser uma animação na vertical, troque por rotateX(180deg) */ } .flipper{ width: 100%; height: 100%; transition: transform 0.8s; transform-style: preserve-3d; } .front, .back{ position: absolute; width: 100%; height: 100%; } .back{ transform: rotateY(180deg); } </style> <center> <div class="flip-container"> <div class="flipper"> <div class="front"> <img src="https://d3mwk3f7r8fv9u.cloudfront.net/images/zohO24tyN2WB8etR3nhZPvhf.png" /> </div> <div class="back"> <img src="https://d3mwk3f7r8fv9u.cloudfront.net/images/XkAkTVqVPbLB3cK5njqdun66.png" /> </div> </div> </div> <!-- AQUI COMEÇA O RODAPÉ --> <!-- CSS DO RODAPÉ --> <style> @import url('https://fonts.googleapis.com/css?family=Poppins:400,500,600,700&display=swap'); *{ margin: 0; padding: 0; color: #d9d9d9; box-sizing: border-box; font-family: 'Poppins', sans-serif; } .content1{ position: relative; margin: 130px auto; text-align: center; padding: 0 20px; } .content1 .text{ font-size: 2.5rem; font-weight: 600; color: #202020; } .content1 .p{ font-size: 2.1875rem; font-weight: 600; color: #202020; } footer{ position: fixed; bottom: 0px; width: 100%; background: #111; } .main-content{ display: flex; } .main-content .box{ flex-basis: 50%; padding: 10px 20px; } .box h2{ font-size: 1.125rem; font-weight: 600; text-transform: uppercase; } .box .content{ margin: 20px 0 0 0; position: relative; } .box .content:before{ position: absolute; content: ''; top: -10px; height: 2px; width: 100%; background: #1a1a1a; } .box .content:after{ position: absolute; content: ''; height: 2px; width: 15%; background: #f12020; top: -10px; } .left .content p{ text-align: justify; } .left .content .social{ margin: 20px 0 0 0; } .left .content .social a{ padding: 0 2px; } .left .content .social a span{ height: 40px; width: 40px; background: #1a1a1a; line-height: 40px; text-align: center; font-size: 18px; border-radius: 5px; transition: 0.3s; } .left .content .social a span:hover{ background: #f12020; } .center .content .fas{ font-size: 1.4375rem; background: #1a1a1a; height: 45px; width: 45px; line-height: 45px; text-align: center; border-radius: 50%; transition: 0.3s; cursor: pointer; } .center .content .fas:hover{ background: #f12020; } .center .content .text{ font-size: 1.0625rem; font-weight: 500; padding-left: 10px; } .center .content .phone{ margin: 15px 0; } .right form .text{ font-size: 1.0625rem; margin-bottom: 2px; color: #656565; } .right form .msg{ margin-top: 10px; } .right form input, .right form .msgForm{ width: 100%; font-size: 1.0625rem; background: #151515; padding-left: 10px; border: 1px solid #222222; } .right form input:focus, .right form .msgForm:focus{ outline-color: #3498db; } .right form input{ height: 35px; } .right form .btn{ margin-top: 10px; } .right form .btn button{ height: 40px; width: 100%; border: none; outline: none; background: #f12020; font-size: 1.0625rem; font-weight: 500; cursor: pointer; transition: .3s; } .right form .btn button:hover{ background: #000; } .bottom center{ padding: 5px; font-size: 0.9375rem; background: #151515; } .bottom center span{ color: #656565; } .bottom center a{ color: #f12020; text-decoration: none; } .bottom center a:hover{ text-decoration: underline; } @media screen and (max-width: 900px) { footer{ position: relative; bottom: 0px; } .main-content{ flex-wrap: wrap; flex-direction: column; } .main-content .box{ margin: 5px 0; } } </style> <div class="content1"> <div class="text"> Fully Responsive Footer Section</div> <div class="p"> HTML and CSS (Flexbox)</div> </div> <footer> <div class="main-content"> <div class="left box"> <h2> About us</h2> <div class="content"> <p> CodinNepal is a YouTube channel where you can learn web designing, web development, ui/ux designing, html css tutorial, hover animation and effects, javascript and jquery tutorial and related so on.</p> <div class="social"> <a href="https://facebook.com/coding.np"><span class="fab fa-facebook-f"></span></a> <a href="#"><span class="fab fa-twitter"></span></a> <a href="https://instagram.com/coding.np"><span class="fab fa-instagram"></span></a> <a href="https://youtube.com/c/codingnepal"><span class="fab fa-youtube"></span></a> </div> </div> </div> <div class="center box"> <h2> Address</h2> <div class="content"> <div class="place"> <span class="fas fa-map-marker-alt"></span> <span class="text">Birendranagar, Surkhet</span> </div> <div class="phone"> <span class="fas fa-phone-alt"></span> <span class="text">+089-765432100</span> </div> <div class="email"> <span class="fas fa-envelope"></span> <span class="text">abc@example.com</span> </div> </div> </div> <div class="right box"> <h2> Contact us</h2> <div class="content"> <form action="#"> <div class="email"> <div class="text"> Email *</div> <input type="email" required> </div> <div class="msg"> <div class="text"> Message *</div> <!-- NOTE: Due to more textarea tag I got an error. So I changed the textarea name to changeit. Please change that changeit name to textarea --> <changeit id=".msgForm" rows="2" cols="25" required></changeit> <!-- replace this changeit name to textarea --> <br /> <div class="btn"> <button type="submit">Send</button> </div> <div class="bottom"> <center> <span class="credit">Created By <a href="https://youtube.com/c/codingnepal">CodingNepal</a> | </span> <span class="far fa-copyright"></span> 2020 All rights reserved. </center> </div> </body> </html>  
    • By Kemily
      Eu preciso de ajuda para poder publicar meu site.
      O professor mandou faze-lo em HTML e CSS e eu fiz mas eu não sei postar e manter as imagens.
      Quando consegui postar as imagens não foram junto.
      O link q consegui fazer sem as imagens ficou assim:
       
      http://hyundai.droppages.com/
    • By Kemily
      <? php /* 1 - Faça uma função que recebe 3 numeros e faça a média aritmética desses números e retorne o resultado. */ if (isset ($_POST['enviar'])); $valor1 = $_POST['valor1']; $valor2 = $_POST['valor2']; $valor3 = $_POST['valor3']; $media = ($valor1 + $valor2 + $valor3) / 3; endif; ?> <!DOCTYPE html> <html> <head> <meta charset = "Utf-8"> <title> Cálculo da média aritimética</title> </head> <body> <form method="post" action=""> <br> <label>Primeiro valor: </label> <input name="valor1" type="text"> <br> <label>Segundo valor: </label> <input name="valor2" type="text"> <br> <label> Terceiro valor: </label> <input name="valor3" type="text"> <br> <br> <button type="submit" name="enviar"> Calcular Média </button> <button type="reset"> Limpar </button> <br> <br> Valor da Média <? php echo "A média equivale a:<br>" . $media . " - "; ?> </form> </body> </html> Alguém pode me ajudar?
      Eu estou fazendo este programa para calcular a média aritmética de três número que serão digitados pelo usuário.
      Porém não estou conseguindo fazer o resultado ser apresentado na tela.
      Nem o ultimo "echo" aparece só o " " . $media . " - "; " literalmente é isso que aparece onde deveria mostrar o resultado.
      Sou iniciante na área de php e se puderem ajudar agradeço. 
    • By adrianno
      Boa noite, tenho a seguinte questão, tenho uma tabela com  campo  "valor"  que guarda um valor monetário e campo "data" com a data do lançamento e um campo "tipo" marcando se é entrada ou saida,  ao cadastrar um valor, coloco a data e qual tipo "entrada" ou "saida"    quero montar uma view que soma todos os valores por mês, separados por tipo, se é entrada ou saida.   A seguinte query me tras a soma, porém não agrupa pelo MES/ANO
      SELECT DATE_FORMAT(data, "%m/%Y") as MES, (select Sum(valor) from controle WHERE tipo = 'SAIDA' ) as VS, // soma tudo que for SAIDA (select Sum(valor) from controle WHERE tipo = 'ENTRADA' ) as VE // soma tudo que for ENTRADA FROM controle GROUP BY YEAR(data), MONTH(data) // agrupa por ANO/MES mas este grupo nao opera nas somas dos valores ORDER BY data DESC  Esta query  somas os valores  mas não filtra pelo mes/ano e tras a soma total de tudo ignorando o mes,  mostra o mesmo valor total de cada tipo em todos os meses:
      EXEMPLO DO RESULTADO
      MES                 VS(saida)     VE(entrada)
      06/2020         4600,00        9750,00
      05/2020         4600,00        9750,00
      04/2020         4600,00        9750,00
       
      Na prática cada mês deveria retornar as somas dos valores apenas dele. Como fazer com que  GROUP BY YEAR(data), MONTH(data)   tenha efeito correto em cada tipo?   
    • By Rebeca Julia Bronzatti
      Oiê gente, eu queria a ajuda de vocês numa coisa que acredito ser simples, mas como sou iniciante tô encontrando dificuldade, é eu tenho duas tabelas uma chamada imóvel e outra arquivoimagem, onde em imóvel eu tenho os dados de um imóvel e em arquivoimagem o nome das imagens e os id delas, eu tô com um problema tanto no SGC quanto no site final, por se tratar de uma imobiliária os imóveis terão mais de uma imagem associadas a ele o dilema é que na hora que eu trago esses dados ele fica me replicando, por exemplo eu tenho um imóvel com 5 imagens associadas a ele, ele réplica esses dados 5 vezes, mudando somente a imagem, só que isso é inútil pra mim. Eu tenho ciência que o código da forma que está faz exatamente o que falei, problema é que eu não sei como mudar isso para o real objetivo.  
      Eu queria que ele viesse somente uma imagem da base de dados associada aquele imóvel, se alguém puder me ajudar eu agradeço.
      $result_imoveis = "SELECT imovel.id, imovel.tipo, imovel.locacao, imovel.valorLocacao, imovel.numQuartos, imovel.numSuites, imovel.numBanheiros, imovel.status, imovel.numVagas, imovel.descricao, imovel.rua, imovel.num, imovel.bairro, arquivoimagem.arquivo FROM imovel INNER JOIN arquivoimagem ON imovel.id = arquivoimagem.imovel_id WHERE locacao = 'Sim' AND status = 'Disponível'"; $resultado_imoveis = mysqli_query($cnn, $result_imoveis); $total_imoveis = mysqli_num_rows($resultado_imoveis); //Seta a quantidade de cursos por pagina $quantidade_pagina = 8; //Calcular o número de página necessaria $num_paginas = ceil($total_imoveis / $quantidade_pagina); //Calcula o inicio da visuzalização $inicio = ($quantidade_pagina * $pagina) - $quantidade_pagina; //Selecionar os imoveis a serem apresentados na página $consultaPagina = "SELECT imovel.id, imovel.tipo, imovel.locacao, imovel.valorLocacao, imovel.numQuartos, imovel.numSuites, imovel.numBanheiros, imovel.status, imovel.numVagas, imovel.descricao, imovel.rua, imovel.num, imovel.bairro, arquivoimagem.arquivo FROM imovel INNER JOIN arquivoimagem ON imovel.id = arquivoimagem.imovel_id WHERE locacao = 'Sim' AND status = 'Disponível' LIMIT $inicio, $quantidade_pagina"; $conPagina = mysqli_query($cnn, $consultaPagina); $total_imoveis = mysqli_num_rows($conPagina); <?php while ($dado = $conPagina->fetch_array()) { $dado['id']; ?> <div class="col s12 m12 l6"> <div class="card"> <div class="card-image"> <img src="<?php echo 'http://localhost/SGC/arquivo/' . $dado ['arquivo']; ?>" class="img-responsive"> <span class="card-title"><?php echo $dado['tipo']; ?></span> </div> <div class="card-content"> <p><?php echo $dado['descricao']; ?></p> <br> <div class="detalhes center-align"> <div class="number "><img src="img/cama.png" style="margin-left: 10px; margin-right: 8px;"><?php echo $dado['numQuartos']; ?></div><br> <div class="number "><img src="img/garagem.png" style="margin-left: 10px; margin-right: 8px;"><?php echo $dado['numVagas']; ?></div><br> <div class="number "><img src="img/banheiro.png" style="margin-left: 10px; margin-right: 8px;"><?php echo $dado['numBanheiros']; ?></div> <div class="number "><img src="img/suite.png" style="margin-left: 10px; margin-right: 8px;"><?php echo $dado['numSuites']; ?></div> </div> </div> <div class="card-action"> <a href="<?php echo "imovel.php?id=" . $dado['id'] ?>"><button type="submit" name="action" class="btn waves-effect waves-ligth btn-small right"> Ver Mais</button></a> <a class="valor" href="#">R$ <?php echo number_format($dado["valorLocacao"], 2, ',', '.');?></a> </div> </div> </div> <?php } ?>  
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.