Ir para conteúdo

POWERED BY:

Arquivado

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

rd111072

Criar array e inserir em IN

Recommended Posts

Bom dia.

 

Quero criar um array com todos os valores/registros de uma coluna para depois inserí-lo no IN de um Select.

 

Como faço?

 

Alguém sabe?

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza cara,

 

Podes fazer o seguntes

 

<%	

Dim ItensColuna() 
ReDim ItensColuna(0)

'Cria o array com todos os elementos da coluna desejada											
while not sua_consulta.EOF

	redim preserve ItensColuna(Ubound(ItensColuna)+1)
	ItensColuna(Ubound(ItensColuna)) = sua_consulta("Coluna")

sua_consulta.movenext : wend
%>
<!-- Lista os elementos adicionados ao Array no select -->
<select name="SeuSelect" id="SeuSelect">
<%
For i = 1 To Ubound(ItensColuna)				
%>
<option value="<%=i%>"><%=ItensColuna(i)%></option>
<%
Next
%>
</select>    

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, funcionou, obrigado.

Só que o select que estou falando não é select html, mas sim um comando SQL.

Tipo:

SQL= "Select * from table where IN (array)"

Como transformo os valores da coluna no array e como insiro dentro do IN?

Compartilhar este post


Link para o post
Compartilhar em outros sites

use o comando JOIN para unir os valores do array em uma unica variavel ai pode usar no IN

Compartilhar este post


Link para o post
Compartilhar em outros sites

O operador IN permite que você especifique vários valores em uma cláusula WHERE

 

SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...)

um exemplo simples

 

<input type="hidden" name="RECity" value="xx">
<% 
While ((Repeat1__numRows <> 0) AND (NOT rsCats.EOF)) 
%>
<p> 
<input type="checkbox" name="ReCity" value="<%=(rsCats.Fields.Item("ReCity").Value)%>">
<font color="#FFFFFF"><%=(rsCats.Fields.Item("ReCity").Value)%></font><br>
</p>
<% 
Repeat1__index=Repeat1__index+1
Repeat1__numRows=Repeat1__numRows-1
rsCats.MoveNext()
Wend
 
QSCity = Request.Querystring("ReCity") 
StrCities = Replace (QSCity ",", "','") 

Response.Write "Minhas cidades são: " & Request("QSCity") & "<P>"
MySQL = "SELECT City FROM tblCities WHERE ReCity IN ('" & StrCity & "')"

Compartilhar este post


Link para o post
Compartilhar em outros sites

de onde especificamente pegará este valores? para ver a melhor forma de unir dentro do IN

Compartilhar este post


Link para o post
Compartilhar em outros sites

no exemplo acima., apenas mude a variavel QSCity , se ela vem do form atrages de get ou post, ou se vem de um bd, atribua a essa variavel

 

QSCity = Request.Querystring("ReCity")
 StrCities = Replace (QSCity ",", "','")
 Response.Write "Minhas cidades são: " & Request("QSCity") & "<P>"
MySQL = "SELECT City FROM tblCities WHERE ReCity IN ('" & StrCity & "')"

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.