Visual Basic.NET - Consulta que regrese regsitros con el mismo dato dentro de un rango de datos

 
Vista:
sin imagen de perfil
Val: 107
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Consulta que regrese regsitros con el mismo dato dentro de un rango de datos

Publicado por Juan Antonio (35 intervenciones) el 18/12/2019 07:00:00
Hola….

Tengo esta tabla en una base de datos, con los siguientes registros en ella:
Juan


Quisiera que por medio de una consulta me seleccione de los ultimos 5 registros insertados todos aquellos registros que el status sea igual a Rechazado…


ESTA ES MI CONSULTA:

SELECT TOP 5 *
FROM ( SELECT *
FROM AQL
WHERE Codigo ='1' and Status = 'Rechazado' )
ORDER BY ID DESC

Resultado de mi consulta:
Juan2


Este es el resultado que yo espero
Juan3


Como podria quedar mi consulta?
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 Phil Rob
Val: 2.250
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Consulta que regrese regsitros con el mismo dato dentro de un rango de datos

Publicado por Phil Rob (577 intervenciones) el 18/12/2019 08:37:47
Hola juan,

Probas este :

1
Consulta = "SELECT TOP 5 ID, * FROM AQL WHERE Status = 'Rechazado' ORDER BY ID DESC"

o si el Codigo es importante :

1
Consulta = "SELECT TOP 5 ID, * FROM AQL WHERE Codigo = 1 AND Status = 'Rechazado' ORDER BY ID DESC"

Que tenga un buen dias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 107
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Consulta que regrese regsitros con el mismo dato dentro de un rango de datos

Publicado por Juan Antonio (35 intervenciones) el 18/12/2019 08:45:20
Hola Phil Rob....

COn ambas consultas me viene saliendo el mismo resultado… Me muestra los registros con el ID 7 y el ID 3....

Creo que ya habia utilizado esa consulta...
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 Phil Rob
Val: 2.250
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Consulta que regrese regsitros con el mismo dato dentro de un rango de datos

Publicado por Phil Rob (577 intervenciones) el 18/12/2019 10:03:17
Testas con este consulta :
1
Consulta = "SELECT TOP 5 Codigo, * FROM AQL WHERE Codigo = '1' AND Status = 'Rechazado' ORDER BY Codigo DESC"

Puedes cambiar el campos del TOP y del ORDER BY : deben ser mismos.

Si no funciona, miraré en la tarde. Dices me ...

Modificacion : veo que Codigo es ShortStriing, tiens que escribir : ... WHERE Codigo = '1' AND ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 107
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Consulta que regrese regsitros con el mismo dato dentro de un rango de datos

Publicado por Juan Antonio (35 intervenciones) el 18/12/2019 10:14:20
Hola de nuevo..!!!

Me siguen saliendo los mismos datos de la consulta….
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 Phil Rob
Val: 2.250
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Consulta que regrese regsitros con el mismo dato dentro de un rango de datos

Publicado por Phil Rob (577 intervenciones) el 18/12/2019 10:33:20
Trabajaré en la tarde pero antes, puedes ver esta :

En mi programa para testar, tengo el codigo :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
        ' *** Leer los 5 ultimos registros y los poner en DataTable  ***
 
        ' Aqui, llenamos un DataTable con los ultimos registros de la tabla en la DB (y para testar, mostrar en DGV)
        '    Consulta = "SELECT TOP " & CuantidadRegistroALeer & " ID, * FROM " & NombreTablaEnDB & " ORDER BY ID DESC"
        Consulta = "SELECT TOP 5 codigo, * FROM TLotesInspeccionados WHERE codigo = '1' AND status = 'Rechazado' ORDER BY codigo DESC"
 
        Dim MiAdapter As New OleDbDataAdapter(Consulta, MiConexion)
        MiAdapter.Fill(UnaTabla)
        UnaTabla.TableName = "TUltimosRegistros"
        MiDatos.Tables.Add(UnaTabla)    ' Poner la tabla en un DataSet no es siempre necesario
        DGVTest.DataSource = UnaTabla   ' Mostrar en DGV
 
        MiAdapter.Dispose()
        Exit Sub
y en mi DB para testar, he agregado la columna "codigo". Adjuntyo la DB MonStock2013.mdb.

Miras el resultado :
Registrado2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 107
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Consulta que regrese regsitros con el mismo dato dentro de un rango de datos

Publicado por Juan Antonio (35 intervenciones) el 18/12/2019 10:41:06
Amigo en su programa no usa ninguna caja de texto o si?
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 Richard
Val: 183
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Consulta que regrese regsitros con el mismo dato dentro de un rango de datos

Publicado por Richard (41 intervenciones) el 18/12/2019 13:18:18
Hola
Veo que con la consulta que te envio Phil Rob te sigue mostrando 2 registros, cuyos ID es 3 y 7.

La consulta que te envio Phil Rob esta bien generada y el resultado es correcto, y te muestra los ID 3 y 7 por que en la parte de la consulta dice WHERE Codigo=1 and status='Rechazado' y ambos registros tienen como codigo=1 y ambos registros tienen como status=Rechazado.

Entonces, la consulta de Phil es correcta, lo que tiene observación son los registros de tu tabla.

Si lo que deseas es que solo te muestre 1 registro tal como pones la imagen la cual deseas que muestre, cambia el TOP 5 por el TOP 1

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 107
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Consulta que regrese regsitros con el mismo dato dentro de un rango de datos

Publicado por Juan Antonio (35 intervenciones) el 18/12/2019 14:02:21
Hola Richard, veo que la consulta de el si da como resultado lo que me dices cumpliendo la condicon que se establece en el where, nomas que yo quisiera lo siguiente:


TENGO LA SIGUIENTE BASE DE DATOS
3

LO QUE QUIERO ES...
1. Tomar los ultimos cinco registros en un select

1


2. De esos cinco registros (sin importer los registros con el ID 1, 2 y 3) quiero que me muestre cuales registros o cuantos registros estan con el status rechazado…..


A lo que la consulta al momento de visualizer quedaria solamente:

2


Con el top uno solo me mostrara el ultimo, y no quisiera eso sino la explicacion hecha anteriormente.

Gracias por el apoyo.
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 Phil Rob
Val: 2.250
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Consulta que regrese regsitros con el mismo dato dentro de un rango de datos

Publicado por Phil Rob (577 intervenciones) el 18/12/2019 15:46:12
Hola Juan,

Para tu pregunta "Amigo en su programa no usa ninguna caja de texto o si?", respuesta es NO. Para testar las consultas, escribido los valores directamente en la frase SQL :
1
Consulta = "SELECT TOP 5 codigo, * FROM TLotesInspeccionados WHERE codigo = '1' AND status = 'Rechazado' ORDER BY codigo DESC"

Para tu ejemplo de 14h02, creo que no has reemplazar ID por codigo. Tu consulta da los 5 ultimos registros sobre los ID, mas quieras los 5 ultimos registros sobre los codigo.


...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 107
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Consulta que regrese regsitros con el mismo dato dentro de un rango de datos

Publicado por Juan Antonio (35 intervenciones) el 19/12/2019 08:34:57
Mcuhas gracias, ya quedo, despues de tanto tiempo >D
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