Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MS SQL Server (https://www.clubdelphi.com/foros/forumdisplay.php?f=23)
-   -   Operadores de comparación... (https://www.clubdelphi.com/foros/showthread.php?t=23068)

dunia_lv 05-07-2005 22:15:32

Operadores de comparación...
 
Hola:

Tengo una pantalla que realiza búsquedas en un tabla bien cargada. Esta búsqueda puede ser también por valores numéricos es decir. Tengo un listado de productos que tienen determinada descripción y precio. Por ejemlo quiero buscar todos los conjuntos de ropas femeninas que cuesten menos de 10 pesos ó quiero buscar los zapatos de hombres que cuesten 13 pesos o más, ó quiero buscar un producto que se encuentre entre dos determinados rangos de precios.
Bien yo quiero ver de que manera puedo sustituir en la consulta de sql
los operadores de operación. Es decir si el usuario realiza una búsqueda de un producto por encima de un precio utilizar el operador '>', si es por debajo del precio '<'...así sucesivamente según la preferencia del usuario..

Se podrá realizar?

Saludos

Dunia

edgusano 06-07-2005 15:50:59

Me parece que podrias tener un stored procedure para que realice esta labor.

Lepe 06-07-2005 17:05:46

Para ello tendrías que construir la consulta a mano, es decir, el usuario tiene en pantalla:
- una caja para escribir el producto que busca (llamado EditProducto)
- un combo con 3 filas, en la primera fila el simbolo Mayor, en la segunda el menor, y en tercera fila el símbolo igual.(llamado ComboOperador)
- Por ultimo una caja para escribir el precio. (llamdo editPrecio)

La consulta puedes crearla más o menos así:
Código Delphi [-]
var sql:String;
sql := 'select nombreProducto, precio from articulos where ';
sql := sql + ' NombreProducto = ' + QuotedStr(editProducto.text)+ ' and ' + 
' Precio '+ comboOperador.items[comboOperador.Itemindex]+ ' ' 
+editPrecio.text;
Consulta.Sql.TExt := sql;
Consulta.Open;

Suponiendo que busca zapatos con precio mayor a 10 pesos, la consulta en tiempo de ejecución quedará:
Código SQL [-]
select NombreProducto, precio from articulos where
NombreProducto = 'zapatos' and Precio > 10

Un saludo

dunia_lv 06-07-2005 18:11:56

Gracias
 
Muchas gracias por la ayuda y sus respuestas....:D


La franja horaria es GMT +2. Ahora son las 00:44:55.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi