Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

salmeida

2 tabelas em uma select

Recommended Posts

Olá, estou com um pequeno problema aqui, alias eu esqueci como eu monto duas tabelas em uma select...

 

If VarAct = "True" Then
	Set ConsPedido = Banco.Execute("SELECT * FROM PedidosFinalizados WHERE Status = True ORDER BY Cod DESC")


ElseIf VarAct = "False" Then
	Set ConsPedido = Banco.Execute("SELECT * FROM PedidosFinalizados WHERE Status = False ORDER BY Cod DESC")

ElseIf VarAct = "Cliente" Then
	Set ConsPedido = Banco.Execute("SELECT * FROM PedidosFinalizados WHERE CodCliente = "& VarCliente &" ORDER BY Cod DESC")

ElseIf VarAct = "Busca" Then
	If Not isNumeric(VarPedido) Then : VarPedido = 0 : End If
	Set ConsPedido = Banco.Execute("SELECT * FROM PedidosFinalizados WHERE Cod = "& VarPedido &"")

Else
	Set ConsPedido = Banco.Execute("SELECT * FROM PedidosFinalizados ORDER BY Cod DESC")

End If

só que esqueci de um detalhe o while net Conspedidos.eof que vai fazer descer os registros de uma certa forma e eu preciso puxar o nome de cada cliente de outra tabela, isso por que na tabela pedidos finalizados o campo ao invez de nome esta CodCliente

 

abração...

 

 

to precisando de ajuda mesmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá salmeida...

 

você deve fazer um JOIN das duas tabelas de acordo com o campo que unirá as duas...

 

Não sei como são suas tabelas, mas vai um exemplo...

 

CODE

 

SELECT p.nomedocampo1, p.nomedocampo2, n.nomodocampo3, n.nomedocampo4

FROM PedidosFinalizados p, nomedaoutratabela n

WHERE p.nomedocampo1=n.nomedocampo3 Status = True ORDER BY Cod DESC

 

Se você sabe como usar isso, já tem uma idéia...

 

Caso ainda tenha dúvidas, mande outro post, como o nome dos campos e da tabela que faço um join para você!

Compartilhar este post


Link para o post
Compartilhar em outros sites

é como o colega falou

 

acrescente a virgula

 

select * from tabela1, tabela2

 

caso as tabelas tenham as mesma colunas relacionadas a nome, cria as condições como o Leo colocou!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

pode crer... é isso mesmo... muito obrigado mesmo....

 

 

 

valeu pessoal!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei por que não esta funcionando... esta dando problemas com parametros... eu fiz da seguinte forma

 

Set ConsPedido = Banco.Execute("SELECT * FROM Clientes, PedidosFinalizados WHERE Cod = "& CodCliente &" Status = True ORDER BY Cod DESC")

 

sendo queo CodCliente é um campo da tabela de PedidosFinalizados e eu preciso dos campo Nome da tabela Clientes sendo que puxe o nome de acordo com o CodCliente que é o ID da tabela de Clientes

Compartilhar este post


Link para o post
Compartilhar em outros sites

que erro esta dando agora?

Compartilhar este post


Link para o post
Compartilhar em outros sites

que erro esta dando agora?

 

cara eu mudei ele não me amostra os erros... ma esta descendo todos os registros de compras

 

Set ConsPedido = Banco.Execute("SELECT * FROM Clientes, PedidosFinalizados WHERE Status = True ORDER BY PedidosFinalizados.Cod DESC")

 

e em cada campo que selecionei tipo eu botei assim

ConsPedido("PedidosFinalizados.DataHora")

 

sacou... ele não me amostra os registros só qe quero que é de mostrar as compras que estão em abertas... está me amostrando todas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Melhora seu select aí, você precisa apenas de nome do cliente, certo?

Este seu vai retornar registros que você não quer.

 

select p.*, c.Nome from PedidosFinalizados p inner join Clientes c on p.CodCliente=c.CodCliente where p.Status=true order by Status desc

 

Agora para mostrar os abertos apenas, você tem de colocar isto no where, creio que seja o status que você colocou.

Compartilhar este post


Link para o post
Compartilhar em outros sites

é esta complicado rs.... olha ae, eu resolvi postar o cod da pagina inteira... rs....

 

<%

Call AbreBanco

Dim VarCliente
Dim ConsPedido
Dim VarAct
Dim VarPedido
Dim VarMsg

VarAct = Request.QueryString("Act")
VarPedido = Request.Form("Pedido")
VarCliente = Request.QueryString("Cliente")

Session("Endereco") = Request.ServerVariables("SCRIPT_NAME") &"?"& Request.ServerVariables("QUERY_STRING")

If VarAct = "True" Then
	Set ConsPedido = Banco.Execute("SELECT * FROM Clientes, PedidosFinalizados WHERE PedidosFinalizados.Status = True ORDER BY PedidosFinalizados.Cod DESC")

ElseIf VarAct = "False" Then
	Set ConsPedido = Banco.Execute("SELECT * FROM Clientes, PedidosFinalizados WHERE PedidosFinalizados.Status = False ORDER BY PedidosFinalizados.Cod DESC")

ElseIf VarAct = "Cliente" Then
	Set ConsPedido = Banco.Execute("SELECT * FROM Clientes, PedidosFinalizados WHERE CodCliente = "& VarCliente &" ORDER BY PedidosFinalizados.Cod DESC")

ElseIf VarAct = "Busca" Then
	If Not isNumeric(VarPedido) Then : VarPedido = 0 : End If
	Set ConsPedido = Banco.Execute("SELECT * FROM Clientes, PedidosFinalizados WHERE PedidosFinalizados.Cod = "& VarPedido &"")

Else
	Set ConsPedido = Banco.Execute("SELECT * FROM Clientes, PedidosFinalizados ORDER BY PedidosFinalizados.Cod DESC")

End If

	
%>
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}
//-->
</script>
<!--#include file="../Includes/BarraCimaAdm.asp"-->
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
	<td>
		<table width="100%"  border="0" cellspacing="0" cellpadding="0">
			  <tr>
				<td width="176" height="100%" valign="top"><!--#include file="../Includes/BarraEsqAdm.asp"--></td>
				<td width="0" valign="top">
					<table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
						  <tr>
							<td height="9%" align="center"><img src="../Imagens/SpacerCima.gif" width="1" height="9"></td>
						</tr>
		 				<tr>
		 				  <td height="20" align="center" bgcolor="<%=FundoTitulo%>"><div align="left">  <span class="TextTahoma11AzulBold">Pedidos</span></div></td>
   					  </tr>
		 				<tr>
							<td height="4%" align="center"> </td>
						  </tr>
					  <%If ConsPedido.Eof Then%>
		 				<tr>
		 				  <td height="20" align="center" class="TextTahoma11CinzaBold">Nenhum pedido encontrado!<br><br><%=Voltar%></td>
	   				  </tr>
					  <%Else%>
		 				<tr>
		 				  <td height="20" align="center"><img src="../Imagens/LinhaCinzaClaro.gif" width="100%" height="1"></td>
	   				  </tr>
		 				<tr>
		 				  <td height="20" align="center"><div align="right"><span class="TextTahoma11AzulBold">Ordenar por: </span>
		 						<select name="Ordem" onChange="MM_jumpMenu('parent',this,0)">
		 						  <option selected></option>
								  <option value="Pedidos.asp">Todos</option>
		 						  <option value="Pedidos.asp?Act=True">Enviados</option>
		 						  <option value="Pedidos.asp?Act=False">Em Andamento</option>
							</select>
	   					</div></td>
	   				  </tr>
						  <tr>
							<td align="center" valign="middle"><table width="100%"  border="0" cellspacing="0" cellpadding="0">
							<tr>
							  <td height="15" colspan="7" align="center" valign="middle"><img src="../Imagens/LinhaCinzaClaro.gif" width="100%" height="1"></td>
							</tr>
							<tr>
							  <td width="5%" height="20" align="center" valign="middle" bgcolor="<%=FundoTitulo%>"><span class="TextTahoma11AzulBold">Cód.</span></td>
							  <td width="12%" align="center" valign="middle" bgcolor="<%=FundoTitulo%>"><span class="TextTahoma11AzulBold">Data/Hora</span></td>
							  <td width="12%" align="center" valign="middle" bgcolor="<%=FundoTitulo%>"><span class="TextTahoma11AzulBold">Cliente</span></td>
							  <td width="10%" align="center" valign="middle" bgcolor="<%=FundoTitulo%>"><span class="TextTahoma11AzulBold">Preço Total </span></td>
							  <td width="12%" align="center" valign="middle" bgcolor="<%=FundoTitulo%>"><span class="TextTahoma11AzulBold">Forma Pagto. </span></td>
							  <td width="6%" align="center" valign="middle" bgcolor="<%=FundoTitulo%>"><span class="TextTahoma11AzulBold">Situação</span></td>
							  <td width="6%" height="20" align="center" valign="middle" bgcolor="<%=FundoTitulo%>"><span class="TextTahoma11AzulBold">Ações</span></td>
							</tr>
							<tr bgcolor="#FFFFFF">
							  <td height="15" colspan="7" align="center" valign="middle"><img src="../Imagens/LinhaCinzaClaro.gif" width="100%" height="1"></td>
							</tr>
							<%While Not ConsPedido.Eof%>
							<tr bgcolor="#FFFFFF">
							  <td height="20" align="center" valign="middle"><span class="TextTahoma11Azul"><%=ConsPedido("PedidosFinalizados.Cod")%></span></td>
							  <td height="20" align="center" valign="middle"><span class="TextTahoma11Azul"><%=ConsPedido("PedidosFinalizados.DataHora")%></span></td>
							  <td height="20" align="center" valign="middle"><span class="TextTahoma11Azul"><%=ConsPedido("Nome")%></span></td>
							  <td height="20" align="center" valign="middle"><span class="TextTahoma11Azul"><%=FormatCurrency(ConsPedido("Valor"))%></span></td>
							  <td height="20" align="center" valign="middle"><span class="TextTahoma11Azul">
							  <%
							  
							  Dim objPagamento
							  
							  Set objPagamento = Banco.Execute("SELECT * FROM Pagamentos WHERE Cod = "& ConsPedido("FormaPagamento") &"")
							  
							  Response.Write objPagamento("Forma")
							  
							  %>
							  </span></td>
							  <td align="center" valign="middle"><%If ConsPedido("PedidosFinalizados.Status") = True Then
									Response.Write "<a href=StaPedido.asp?Act=Desativar&Cod="& ConsPedido("PedidosFinalizados.Cod") &" class=LinkTahoma11Azul>Enviado</a>"
								ElseIf ConsPedido("PedidosFinalizados.Status") = False Then
									Response.Write "<a href=StaPedido.asp?Act=Ativar&Cod="& ConsPedido("PedidosFinalizados.Cod") &" class=LinkTahoma11Azul>Em andamento</a>"
								End If%></td>
							  <td align="center" valign="middle"><a href="Pedidos2.asp?Pedido=<%=ConsPedido("PedidosFinalizados.Cod")%>&Cliente=<%=ConsPedido("CodCliente")%>"><img src="../Imagens/IcMaisInfo.gif" alt="Mais Informações" width="12" height="12" border="0"></a> <a href="DelPedidos.asp?Pedido=<%=ConsPedido("PedidosFinalizados.Cod")%>"><img src="../Imagens/IcDelete.gif" width="12" height="12" border="0"></a></td>
							</tr>
							<tr bgcolor="#FFFFFF">
							  <td height="15" colspan="7" align="center" valign="middle"><img src="../Imagens/LinhaCinzaClaro.gif" width="100%" height="1"></td>
							</tr>
							<%ConsPedido.Movenext : Wend %>
						  </table></td>
	   				  </tr>
					  <%End If%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Está faltando fazer o Join, propriamente dito:

"SELECT * FROM Clientes INNER JOIN PedidosFinalizados ON Clientes.AlgumCampo = PedidosFinalizados.AlgumCampo WHERE PedidosFinalizados.Status = True ORDER BY PedidosFinalizados.Cod DESC"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Está faltando fazer o Join, propriamente dito:

"SELECT * FROM Clientes INNER JOIN PedidosFinalizados ON Clientes.AlgumCampo = PedidosFinalizados.AlgumCampo WHERE PedidosFinalizados.Status = True ORDER BY PedidosFinalizados.Cod DESC"

não esta dando certo n.. etsa dizendo que Type mismatch in expression.

Compartilhar este post


Link para o post
Compartilhar em outros sites

o qeu mudou exatamente?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.