Foros del Web » Programando para Internet » ASP Clásico »

Filtrar 6 primeros caracteres

Estas en el tema de Filtrar 6 primeros caracteres en el foro de ASP Clásico en Foros del Web. Hola Gente, una consulta tengo una base con numeros y quiero que me filtre los 6 primeros caracteres el tema es que use la sentencia ...
  #1 (permalink)  
Antiguo 04/12/2008, 10:29
 
Fecha de Ingreso: marzo-2002
Mensajes: 20
Antigüedad: 23 años, 1 mes
Puntos: 0
Filtrar 6 primeros caracteres

Hola Gente, una consulta tengo una base con numeros y quiero que me filtre los 6 primeros caracteres el tema es que use la sentencia e mas abajo pero no me filtra y supongo es por un guion medio que tiene los numeros en el campo codigo que es campo de texto en la bd los números son por ej 024-1020xe, 024-1020, 024-1110, etc la idea es agruparlos, gracias

SELECT *
FROM Articulos
WHERE (((codigo)=Left([codigo],6)));
  #2 (permalink)  
Antiguo 04/12/2008, 12:18
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 21 años, 6 meses
Puntos: 27
Respuesta: Filtrar 6 primeros caracteres

Código asp:
Ver original
  1. SELECT *
  2. FROM Articulos
  3. WHERE left(codigo,6) = '024-10';
.


sera?
__________________
JuanRa Pérez
San Salvador, El Salvador
  #3 (permalink)  
Antiguo 04/12/2008, 12:27
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 22 años, 8 meses
Puntos: 16
Respuesta: Filtrar 6 primeros caracteres

o

Código PHP:
select *
from articulos
where codigo like 
'024-10%' 
ya que colocar una funcion sobre el campo de la tabla le genera un peso a la bd enorme.
ademas, si es que codigo tiene un indice, al colocarle una funcion, este indice no es usado en la busqueda.



de todas maneras, estoy pegando palos de ciego por que no entendi mucho el problema
  #4 (permalink)  
Antiguo 04/12/2008, 13:46
 
Fecha de Ingreso: marzo-2002
Mensajes: 20
Antigüedad: 23 años, 1 mes
Puntos: 0
Respuesta: Filtrar 6 primeros caracteres

Juan necesito que tome los 6 primeros digitos lo que puse es un ejemplo pero hay muchos codigo 010-, 020-, 030- etc por eso no pongo '010-' necesito que tome los 6 pirmeros digitos, cuando coloco asi me trae todos. ej
numeros cargados en la base
010-0101
010-0102
010-0103
010-0201
010-0202

necesito e lresultado
010-01
010-02 etc
es para poder agruparlos, espero haber sido claro, muchas gracias
  #5 (permalink)  
Antiguo 04/12/2008, 14:46
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 21 años, 6 meses
Puntos: 27
Respuesta: Filtrar 6 primeros caracteres

ummm agrupados por los primeros 6 caracteres

la condicion group by no te sale mejor?
__________________
JuanRa Pérez
San Salvador, El Salvador
  #6 (permalink)  
Antiguo 05/12/2008, 08:32
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 3 meses
Puntos: 126
Respuesta: Filtrar 6 primeros caracteres

Hola

Prueba así. Se trata de hacer un arreglo

Código asp:
Ver original
  1. SQL = "Select campo From tabla"
  2.  
  3. registros = rs.getrows()
  4. cantidad = CInt(UBound(registros,2) +1)
  5.  
  6. Dim valores()
  7. Redim preserve valores(1)
  8.  
  9. for i = 0  to UBound(registros,2)
  10. valores(0) = Left(registros(0,0),6)
  11.  
  12. resultado=0
  13.        
  14. For y=0 to (UBound(valores)-1)
  15. resultado = StrComp(Left(registros(0,i),6),valores(y),1)
  16.  
  17. if (resultado = 0) Then
  18. Exit For
  19. end if
  20. Next
  21.  
  22. if(resultado <> 0) Then
  23. Redim preserve valores(UBound(valores)+1)
  24. valores(UBound(valores)-1) = Left(registros(0,i),6)
  25. end if
  26. Next
  27.  
  28. For p = 0 to UBound(valores)
  29. Response.Write valores(p) & "<br />"
  30. Next

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #7 (permalink)  
Antiguo 05/12/2008, 09:49
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 21 años, 6 meses
Puntos: 27
Respuesta: Filtrar 6 primeros caracteres

como vas alder

fijate que mas creo que lo que el quiere es otra cosa, bueno seria comentara lo que quiere hacer

me imagino que lo que queire es hacer un select a su base y que le diga

hay 30 que son 001
hay 50 que son 002
hay 60 que son 002
hay 70 que son 003
__________________
JuanRa Pérez
San Salvador, El Salvador
  #8 (permalink)  
Antiguo 05/12/2008, 13:07
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 3 meses
Puntos: 126
Respuesta: Filtrar 6 primeros caracteres

Hola JuanRA, quizás tengas razón

En tal caso lo se ha de cambiar

Código asp:
Ver original
  1. For p = 0 to UBound(valores) Response.Write valores(p) & "<br />" Next

por

Código asp:
Ver original
  1. For p = 0 to UBound(valores)-1
  2. SQL1 = "Select Count(campo) AS cant From tabla where campo LIKE '"&valores(p)&"%'"
  3. Set rs1 = oConn.Execute(SQL1)
  4. do while not rs1.eof
  5. %>
  6. <%=rs1("cant")%> - <%=valores(p)%><br />
  7. <%
  8. rs1.movenext
  9. loop
  10. rs1.Close
  11. Set rs1 = Nothing
  12. Next
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #9 (permalink)  
Antiguo 05/12/2008, 13:39
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 21 años, 6 meses
Puntos: 27
Respuesta: Filtrar 6 primeros caracteres

correcto!!!!!!!!!!!!!
__________________
JuanRa Pérez
San Salvador, El Salvador
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:14.