MySQL - Where

 
Vista:
Imágen de perfil de Cristian
Val: 22
Ha disminuido su posición en 2 puestos en MySQL (en relación al último mes)
Gráfica de MySQL

Where

Publicado por Cristian (28 intervenciones) el 31/03/2022 15:15:16
Buenas...
Estoy haciendo una consulta mostrando todos los datos de esta manera y funciona:

1
select articulos.idArticulo, articulos.codart, articulos.descripcion, rubros.rubro from articulos,rubros where articulos.idRubro=rubros.idRubro order by articulos.idArticulo

Ahora bien, cuando quiero mostrar solamente un rubro no funciona. Muestro el ejemplo.

1
select articulos.idArticulo, articulos.codart, articulos.descripcion, rubros.rubro from articulos,rubros where articulos.idRubro=1 order by articulos.idArticulo

Espero alguna sugerencia que no este viendo yo.

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Ivan

Where

Publicado por Ivan (37 intervenciones) el 31/03/2022 21:46:46
Hola,

en tu primer select haces un recorrido completo de cada una de tus tablas articulos y rubros con:
where articulos.idRubro=rubros.idRubro order by articulos.idArticulo

De modo que para cada articulos.idRubro busca si hay un rubros.idRubro

En tu segundo select sólo busca el articulos.idRubro con valor 1.

Pueden pasar varias cosas (hablo de memoria y puede que me equivoque)

1 - No existe un articulos.idRubro con valor 1
2 - Intentas mostrar datos de la tabla rubros en el select pero como no buscas sus elementos en el where no aparece.

Espero que te sirva, un saludo!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Cristian
Val: 22
Ha disminuido su posición en 2 puestos en MySQL (en relación al último mes)
Gráfica de MySQL

Where

Publicado por Cristian (28 intervenciones) el 31/03/2022 22:27:32
Hola Iván, gracias por responder.

Me inclino por la segunda opción, porque el 1 existe.

Como seria la corrección ? no logro darme cuenta

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Ivan

Where

Publicado por Ivan (37 intervenciones) el 01/04/2022 20:14:23
Hola,

en el primero haces -> where articulos.idRubro=rubros.idRubro

en el segundo haces -> where articulos.idRubro=1

tal como está, en teoría debería mostrar algo si existe el valor articulos.idRubro=1

lo único que se me ocurre es añadir el identificador en la segunda tabla (rubros) que teniendo en cuenta
que cada articulos.idRubro es igual a un rubros.idRubro quedaría

where articulos.idRubro=1
and rubros.idRubro=1

Un saludo!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Cristian
Val: 22
Ha disminuido su posición en 2 puestos en MySQL (en relación al último mes)
Gráfica de MySQL

Where

Publicado por Cristian (28 intervenciones) el 04/04/2022 15:50:09
Hola Ivan...
Gracias por tu tiempo. No me funcuiono, pero pude encontrar una solucion que si me muestra.
Te dejo el codigo.

1
2
inner join rubros on articulos.idRubro = rubros.idRubro where articulos.idRubro= '" + _idRubro + "' "

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar