Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

query para obterner datos con condiciones

Estas en el tema de query para obterner datos con condiciones en el foro de Bases de Datos General en Foros del Web. Buenas, Tengo el siguiente problema. Quiero que una consulta em filtre los datos duplicados pero que me muestre el dato segun una condicion. Va algo ...
  #1 (permalink)  
Antiguo 16/09/2013, 10:35
 
Fecha de Ingreso: septiembre-2013
Mensajes: 1
Antigüedad: 10 años, 7 meses
Puntos: 0
Pregunta query para obterner datos con condiciones

Buenas,
Tengo el siguiente problema. Quiero que una consulta em filtre los datos duplicados pero que me muestre el dato segun una condicion.

Va algo asi

SCH_UID SCH_NAME ESS_PERMISSION ESS_UID
7 Test User Share View 62
6 Test Group Share View 63
16 Test UG share View 64
16 Test UG share Edit 65

Donde lo que quiero que pase es que me muestre solo una vez el regstro 16 pero que me muetsre el que tiene permiso de EDIT.

Saludos y gracias
  #2 (permalink)  
Antiguo 16/09/2013, 14:10
 
Fecha de Ingreso: febrero-2013
Ubicación: Lima
Mensajes: 301
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: query para obterner datos con condiciones

puedes usau una consulta como esta(si tu DBMS es SQL):
Código SQL:
Ver original
  1. CREATE TABLE a1(
  2. SCH_UID INT,
  3. SCH_NAME VARCHAR(500),
  4. ESS_PERMISSION VARCHAR(500),
  5. ESS_UID INT
  6. )
  7. INSERT INTO a1 VALUES ('7','Test User','Share View','62')
  8. INSERT INTO a1 VALUES ('6','Test Group','Share View','63')
  9. INSERT INTO a1 VALUES ('16','Test UG','Share View','64')
  10. INSERT INTO a1 VALUES ('16','Test UG','share Edit','65')
  11.  
  12. SELECT *
  13. FROM(
  14.  SELECT ROW_NUMBER() OVER(Partition BY SCH_UID ORDER BY ESS_UID DESC) NM,*
  15. FROM a1) AS t1
  16. WHERE NM=1

esto te filtrara los registros duplicados pero con la condicion que tomara el ESS_UID descendentemente, es decir, solo tomara los ultimos registros ejem: si tienes registros iguales con ESS_UID 105 y 115, te considerara solo el 115, independientemente de los otros registros que puedas tener.

espero te sirva....

saludos...
__________________
Lo que no se....tampoco creo saberlo....
  #3 (permalink)  
Antiguo 16/09/2013, 20:41
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: query para obterner datos con condiciones

demasiada complejidad cuando el compañero quiere esto:

select * from tabla where id=16 and permission='edit'
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:02.