Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 31-07-2008
dalsim dalsim is offline
Miembro
 
Registrado: jul 2008
Posts: 47
Poder: 0
dalsim Va por buen camino
pregunta sobre sql "AND c.tipo IN ('T','F','N')"

tengo esta sentencia en un reporte (sql) AND c.tipo IN ('T','F','N')

como puedo poner o como seria la sentencia diferente de
AND c.tipo<> ('C,'A')
en la sentencia anterior se me alenta el reporte utilizazo firebird alguna sugerencia

pongo todo el query
SELECT o.codigo, a.existencia, a.ult_costo, a.desc_larga,sum(vd.cantidad) as cantidad,
CAST(SUM(vd.cantidad*vd.precio*(1-vd.descuento/100))
AS numeric(15,4))
AS importe,

CAST(SUM(vd.cantidad*a.ult_costo)
AS numeric (15,4))
AS costo from ventasdet vd
LEFT JOIN ventas v ON vd.venta = v.clave
LEFT JOIN articulos a ON vd.articulo = a.clave
LEFT JOIN comprobantes c ON c.venta = vd.venta
LEFT JOIN codigos o ON (a.clave = o.articulo AND o.tipo='P')
WHERE (v.fecha >= :FechaIni) AND (v.fecha <= :FechaFin)
AND (o.codigo >= :CodigoIni) AND (o.codigo <= :CodigoFin)
AND (v.estatus = 'A')
AND c.tipo IN ('T','F','N') AND (c.estatus='A')
GROUP BY o.codigo, a.existencia, a.desc_larga, a.ult_costo
Responder Con Cita
  #2  
Antiguo 31-07-2008
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Hola,

Código SQL [-]
AND c.tipo Not In...

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #3  
Antiguo 31-07-2008
dalsim dalsim is offline
Miembro
 
Registrado: jul 2008
Posts: 47
Poder: 0
dalsim Va por buen camino
hola

no va entre corchetes o parentesis
Responder Con Cita
  #4  
Antiguo 31-07-2008
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Cita:
Empezado por dalsim Ver Mensaje
no va entre corchetes o parentesis
Código SQL [-]
SELECT o.codigo, a.existencia, a.ult_costo, a.desc_larga,sum(vd.cantidad) as cantidad,
CAST(SUM(vd.cantidad*vd.precio*(1-vd.descuento/100)) 
AS numeric(15,4))
AS importe,

CAST(SUM(vd.cantidad*a.ult_costo)
AS numeric (15,4))
AS costo from ventasdet vd
LEFT JOIN ventas v ON vd.venta = v.clave
LEFT JOIN articulos a ON vd.articulo = a.clave
LEFT JOIN comprobantes c ON c.venta = vd.venta
LEFT JOIN codigos o ON (a.clave = o.articulo AND o.tipo='P')
WHERE (v.fecha >= :FechaIni)  AND (v.fecha <= :FechaFin)
AND (o.codigo >= :CodigoIni) AND (o.codigo <= :CodigoFin)
AND (v.estatus = 'A')
AND c.tipo NOT IN ('C','A') AND (c.estatus='A')
GROUP BY o.codigo, a.existencia, a.desc_larga, a.ult_costo

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #5  
Antiguo 31-07-2008
dalsim dalsim is offline
Miembro
 
Registrado: jul 2008
Posts: 47
Poder: 0
dalsim Va por buen camino
bueno acabo de modificar el reporte y si efectivamente corre

solo que y pense qe esa era la solucion a la lentitud del reporte y no si quito esos AND correo bien el reporte pero no es el caso alguna sugerencia amigo)
Responder Con Cita
  #6  
Antiguo 31-07-2008
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Una pregunta, ¿esa sentencia genera muchos datos?.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #7  
Antiguo 31-07-2008
dalsim dalsim is offline
Miembro
 
Registrado: jul 2008
Posts: 47
Poder: 0
dalsim Va por buen camino
si mira los sig..

T=ticket que son bastantitos en unos meses
N=notas
F=facturas
etc.. asique estos reportes los estoy utilizando en un minisuper imaginate arriba de 50 mil regustros en un mes y si se tarda el reporte normal

C=cancelado
A=activos
Responder Con Cita
  #8  
Antiguo 31-07-2008
dalsim dalsim is offline
Miembro
 
Registrado: jul 2008
Posts: 47
Poder: 0
dalsim Va por buen camino
ahora como puedo medir el tamano de una tabla

si puedo saber que tabla es la mas grande quizas empezar primero por filtrar los datos que me interesa por decir solo los A N T F y despues hacer una segunda consulta no se que opines pero si ¿como saber el tamaño de mis tablas independientemente?
Responder Con Cita
  #9  
Antiguo 31-07-2008
Avatar de RONPABLO
[RONPABLO] RONPABLO is offline
Miembro Premium
 
Registrado: oct 2004
Posts: 1.514
Poder: 21
RONPABLO Va por buen camino
1. prueba primero en hacer o poner un indice a el campo llamado tipo,
Si sigue lento cambia el in por comparaciones tipo '=' o '<>'
ejemplos
cambia
AND c.tipo IN ('T','F','N')

por
AND (c.tipo = 'T' or c.tipo = 'F' or c.tipo = 'N')
o filtra
AND (c.tipo<> 'C' AND c.tipo<>'A')



Nota... recuerda el indice
__________________
"Como pasa el tiempo..... ayer se escribe sin H y hoy con H"
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Sobre componentes del tipo "TChart" o similares, preguntas varias dec Gráficos 2 22-11-2007 13:50:47
pregunta tonta sobre "property" patroclus02 OOP 6 09-10-2006 18:14:31
Pregunta tonta relacionada con el campo "autoincremento" de paradox ojan69 Conexión con bases de datos 1 20-12-2005 15:43:10
Tipo de Variable."String" ó "Double" UTECYBER OOP 7 15-12-2003 20:25:39
Problemas con Query campo tipo Date "Oracle" Marrano Oracle 4 27-05-2003 12:09:56


La franja horaria es GMT +2. Ahora son las 19:27:35.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi