FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
como hago esta consulta.
hola buenas veran solo lo que quiero es lo siguiente, quiero hacer una consulta que de de como resustato todos los valores que se encuentren en un rango de fechas y que cumplan mas requisitos. tengo esta sentencia pero no me sale:
metodo#1: SELECT DISTINCT DETTRA.* FROM DETTRA WHERE SERIE='P' AND CANREC = 0 and fecha >= '09/01/2004' and fecha<= '09/30/2004' ORDER BY TIENDA,TDAORI veran existen filas que se duplican en el campo numtra y lo que quiero es que no se dupliquen. lo hice de esta forma y si funciona: metodo#2: SELECT DISTINCT numtra FROM DETTRA WHERE SERIE='P' AND CANREC = 0 and fecha >= '09/01/2004' and fecha<= '09/30/2004' ORDER BY TIENDA,TDAORI sustitui DISTINCT DETTRA.* por DISTINCT numtra pero yo necesito que se presenten todos los campos de la tabla y con el metodo 2 solo me muestra numtra. gracias x la ayuda |
#2
|
|||
|
|||
Consulta SQL
Ya probaste agrupando
SELECT DISTINCT DETTRA.* FROM DETTRA WHERE SERIE='P' AND CANREC = 0 and fecha >= '09/01/2004' and fecha<= '09/30/2004' ORDER BY TIENDA,TDAORI group by [Campos] |
#3
|
|||
|
|||
otra forma de hacerlo fue
otra forma de hacerlo fue esta:
SELECT DETTRA.NUMTRA, DETTRA.TDAORI, DETTRA.TIENDA FROM DETTRA WHERE (SERIE = 'P') AND (CANREC = 0) AND (fecha >= '09/01/2004') AND (fecha <= '09/30/2004') group by DETTRA.NUMTRA, DETTRA.TDAORI, DETTRA.TIENDA order by numtra pero necesito todos los campos.. muchas gracias x su ayuda |
#4
|
||||
|
||||
Lo que sucede es que distinct sólo puede considerar iguales dos renglones si todos los campos listados coinciden, de otra forma, ¿como haría para descartar uno de ellos? ¿Qué criterios usaría? Tú mismo, ¿cómo le harías? Si, por ejemplo tienes los renglones
(84, 'un valor', ...) (84, 'otro valor',...) tú quieres que distinct te devuelva sólo uno de ellos ya que el 84 (numtra) se repite. Pero de esos dos renglones, ¿cuál se escoge? // Saludos |
#5
|
|||
|
|||
muchas gracias Roman
gracias hermano, al fin lo entendi. por otro lado tengo este problema
veras he hecho esta consulta y subconsulta: SELECT * FROM SUMEMB where docto in ( SELECT DISTINCT docto FROM SUMEMB INNER JOIN DETTRA ON (SUMEMB.DOCTO = DETTRA.NUMTRA) AND (SUMEMB.TDAORI = DETTRA.TDAORI) AND (SUMEMB.TDADES = DETTRA.TIENDA) WHERE ((SUMEMB.FECHA >= '08/01/2004') AND (SUMEMB.FECHA <= '08/31/2004') AND (SERDOC = 'P')) AND ((EDOEMB = '') OR (EDOEMB = 'E')) ) ** como veras quiero todos los registros de sumemb segun la subconsulta y que no se repitan *** el problema es que con la consulta que expreso, simplemente el programa en donde la ejecute (IB console, EMS interbase & firebird Manager, Delphi) deja de responder. y eso pasa en cualquier pc que use .. me podrias ayudar. |
|
|
|