
07/07/2004, 09:17
|
 | | | Fecha de Ingreso: marzo-2004
Mensajes: 626
Antigüedad: 21 años, 1 mes Puntos: 2 | |
sentencia sql con cantidades estoy haciendo un trabajito q en teoria no me tenia q dar ningun problema y no se q es lo q no me sale.
la pagina consiste en 2 combos y un boton (dentro de un formulario) q tras seleccionar los combos y pulsar el boton se muestran los resultados de una sentencia sql. el segundo combo contiene intervalos de precios. este es parte del codigo:
<tr>
<td>
Precio:</td>
<td>
<select name="precio">
<option value="seleccione">.:Seleccione Precio:.</option>
<% if request.form("precio")=0 then %>
<option value="<%=0%>" selected>Todos los precios </option>
<%else%>
<option value="0">Todos los precios</option>
<%end if%>
<% if request.form("precio")=1 then %>
<option value="<%=1%>" selected>Inferior a 90.000€ </option>
<%else%>
<option value="1">Inferior a 90.000€</option>
<%end if%>
<% if request.form("precio")=2 then %>
<option value="<%=2%>" selected>90.000 a 150.000€</option>
<%else%>
<option value="2">90.000 a 150.000€</option>
<%end if%>
<% if request.form("precio")=3 then %>
<option value="<%=3%>" selected>150.000 a 250.000€</option>
<%else%>
<option value="3">150.000 a 250.000€</option>
<%end if%>
<% if request.form("precio")=4 then %>
<option value="<%=4%>" selected>250.000 a 300.000€</option>
<%else%>
<option value="4">250.000 a 300.000€</option>
<%end if%>
<% if request.form("precio")=5 then %>
<option value="<%=5%>" selected>Mas de 300.000€</option>
<%else%>
<option value="5">Mas de 300.000€</option>
<%end if%>
</select>
</td>
</tr>
este es el segundo combo (en el primero se selecciona la localidad), si todo va bien le digo q busque los resultados y hago lo siguiente:
valores=request.form("precio")
select case valores
case 0:
minimo=0
maximo=10000000000
case 1:
minimo=0
maximo=90000
case 2:
minimo=90000
maximo=150000
case 3:
minimo=150000
maximo=250000
case 4:
minimo=250000
maximo=300000
case 5:
minimo=300000
maximo=10000000000
end select
de esta forma se en q intervalo de precio esta lo q busca una persona y ya puedo hacer la consulta:
sql2="select * from inmuebles where tipo='PISO' and localidad='"&request.form("localidad")&"' and precioeuros between '" & minimo &"' and '" & maximo &"'"
set RS2=Server.CreateObject("ADODB.RecordSet")
RS2.Open sql2,conn,&H0001,3
la sentencia sql la he hecho de mil formas como esta:
sql2="select * from inmuebles where tipo='PISO' and localidad='"&request.form("localidad")&"' and precioeuros>='" & minimo &"' and precioeuros<'" & maximo &"'"
la pagina no da ningun problema, simplemente saca los valores que le parecen y no los q le pido en el combo.si dejo la sentencia sql asi:
sql2="select * from inmuebles where tipo='PISO' and localidad='"&request.form("localidad")&"'"
lo hace bien. asi q el problema creo q es q no interpreta bien los precios (el select case) el caso es q le he indicado q me saque esos resultados en la pantalla (localidad, minimo y maximo) y contienen lo que tienen q contener.
en la base de datos el campo donde viene el precio es de tipo texto.
¿me podeis ayudar? muchas gracias |