entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

problemilla con LIMIT PDO

tengo un query

$select1 = $conexion->prepare("SELECT * from productos WHERE nom_prod LIKE :q ");
            $select1->bindParam(':q',$producto);

mi problema es que quiero agregar un LIMIT pero no funciona loe eh agregado como el query anterior
y tambien con bindValue y no muestra

tambien agrege el LIMIT en el query

$select1 = $conexion->prepare("SELECT * from productos WHERE nom_prod LIKE :q LIMIT 1");
            $select1->bindParam(':q',$producto);

y no funciona arroja vacio el resultado
eh visto que si funciona en PDO y MYSQL, ya que yo estoy utilizando PD y Sqlserver

2 Respuestas

1voto

erick Puntos1770

Lo solucione agrege un TOP 1:

$select1 = $conexion->prepare("SELECT TOP 1  * from productos WHERE nom_prod LIKE :q ");
            $select1->bindParam(':q',$producto);

0voto

Leonardo-Tadei Puntos227320

Hola Erik,

Los RDBMS MS Sqlserver no implementan la instrucción LIMIT y por esto no te funciona. Creo que la última última versión si lo implementa.

El Sqlserver implementa TOP que es parecido, pero con una salvedad: a LIMIT le decís desde dónde devolver valores y cuantos (ej LIMIT 1, 10) pero a TOP le decís solo cuantos (ej TOP 1). Esto te da el problema de que si querés por ejemplo el valor en la posición 1000, tenés que pedir que te de los primeros 1000 y buscar el último.

Por esto para usar TOP siempre tené en cuenta combinarlo con un ORDER BY para que el resultado esté ordenado cómo te haga falta de forma tal que el valor buscado esté siempre primero o entre los primeros datos.

En tu consulta, al buscar con LIKE, podrían aparecer varios valores... es correcto que sólo te haga falta el primero para la semántica del problema a resolver?

Saludos!

0voto

erick comentado

a si es si de eso me di cuenta master,
ya que la buscar estoy utilizando ajax y solo quiero que me aparesca los datos 1 x1 en lo que de escribo en el textbox y ya caundo coincidad me arroje el qu ebusco!!

gracias por tu explicacion!!!

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta