elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  SQL--Where fechas (Condición de fechas)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: SQL--Where fechas (Condición de fechas)  (Leído 37,373 veces)
noobdai

Desconectado Desconectado

Mensajes: 27



Ver Perfil
Re: SQL--Where fechas (Condición de fechas)
« Respuesta #10 en: 4 Marzo 2010, 23:00 pm »

Ok.

Muchas gracias por todo. ;-)

Saludos


En línea

^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: SQL--Where fechas (Condición de fechas)
« Respuesta #11 en: 5 Marzo 2010, 01:39 am »

Si te inclinas por crear un procedimiento con lo siguiente como contenido... podria servirte  :rolleyes:  Donde la fecha puede pasar como parametro.

Código
  1.  
  2. SQL> SELECT * FROM ejemplo;
  3.  
  4. FECHA        SALARIO
  5. --------- ----------
  6. 20-JAN-09      23000
  7. 15-JAN-09      14000
  8. 28-FEB-09      20000
  9. 15-FEB-08      20000
  10. 13-JAN-08      25000
  11. 27-DEC-09      20000
  12. 16-DEC-09      25000
  13. 10-DEC-09      18000
  14.  
  15. 8 ROWS selected.
  16.  
  17. SQL> DECLARE
  18.  2  SUMA INTEGER;
  19.  3  BEGIN
  20.  4  FOR a IN 0..12
  21.  5  LOOP
  22.  6  SELECT COUNT(SALARIO) INTO SUMA FROM EJEMPLO WHERE FECHA > '31-DEC-08' AND SUBSTR((TO_CHAR(FECHA, 'DD/MM/YY')), 4, 2) = a;
  23.  7  DBMS_OUTPUT.PUT_LINE('El mes :: '||a||' Tiene '||suma||' Registros');
  24.  8  END LOOP;
  25.  9  END;
  26. 10  /
  27. El mes :: 0 Tiene 0 Registros
  28. El mes :: 1 Tiene 2 Registros
  29. El mes :: 2 Tiene 1 Registros
  30. El mes :: 3 Tiene 0 Registros
  31. El mes :: 4 Tiene 0 Registros
  32. El mes :: 5 Tiene 0 Registros
  33. El mes :: 6 Tiene 0 Registros
  34. El mes :: 7 Tiene 0 Registros
  35. El mes :: 8 Tiene 0 Registros
  36. El mes :: 9 Tiene 0 Registros
  37. El mes :: 10 Tiene 0 Registros
  38. El mes :: 11 Tiene 0 Registros
  39. El mes :: 12 Tiene 3 Registros
  40.  
  41. PL/SQL PROCEDURE successfully completed.
  42.  
  43.  

Tenia tiempo que no tocaba PL/SQL


En línea

noobdai

Desconectado Desconectado

Mensajes: 27



Ver Perfil
Re: SQL--Where fechas (Condición de fechas)
« Respuesta #12 en: 5 Marzo 2010, 09:05 am »

Si te inclinas por crear un procedimiento con lo siguiente como contenido... podria servirte  :rolleyes:  Donde la fecha puede pasar como parametro.

Código
  1.  
  2. SQL> SELECT * FROM ejemplo;
  3.  
  4. FECHA        SALARIO
  5. --------- ----------
  6. 20-JAN-09      23000
  7. 15-JAN-09      14000
  8. 28-FEB-09      20000
  9. 15-FEB-08      20000
  10. 13-JAN-08      25000
  11. 27-DEC-09      20000
  12. 16-DEC-09      25000
  13. 10-DEC-09      18000
  14.  
  15. 8 ROWS selected.
  16.  
  17. SQL> DECLARE
  18.  2  SUMA INTEGER;
  19.  3  BEGIN
  20.  4  FOR a IN 0..12
  21.  5  LOOP
  22.  6  SELECT COUNT(SALARIO) INTO SUMA FROM EJEMPLO WHERE FECHA > '31-DEC-08' AND SUBSTR((TO_CHAR(FECHA, 'DD/MM/YY')), 4, 2) = a;
  23.  7  DBMS_OUTPUT.PUT_LINE('El mes :: '||a||' Tiene '||suma||' Registros');
  24.  8  END LOOP;
  25.  9  END;
  26. 10  /
  27. El mes :: 0 Tiene 0 Registros
  28. El mes :: 1 Tiene 2 Registros
  29. El mes :: 2 Tiene 1 Registros
  30. El mes :: 3 Tiene 0 Registros
  31. El mes :: 4 Tiene 0 Registros
  32. El mes :: 5 Tiene 0 Registros
  33. El mes :: 6 Tiene 0 Registros
  34. El mes :: 7 Tiene 0 Registros
  35. El mes :: 8 Tiene 0 Registros
  36. El mes :: 9 Tiene 0 Registros
  37. El mes :: 10 Tiene 0 Registros
  38. El mes :: 11 Tiene 0 Registros
  39. El mes :: 12 Tiene 3 Registros
  40.  
  41. PL/SQL PROCEDURE successfully completed.
  42.  
  43.  

Tenia tiempo que no tocaba PL/SQL

Muchas gracias Tifa te lo has currado  ;-) pero necesito que sea SQL ya que PL/SQL no lo hemos tocado en clase. :(
En línea

^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: SQL--Where fechas (Condición de fechas)
« Respuesta #13 en: 5 Marzo 2010, 13:22 pm »

Pues puro SQL

Código
  1.  
  2. SELECT COUNT(SALARIO) INTO SUMA FROM EJEMPLO WHERE FECHA > '31-DEC-08' AND SUBSTR((TO_CHAR(FECHA, 'DD/MM/YY')), 4, 2) = a;
  3.  
  4.  

En línea

noobdai

Desconectado Desconectado

Mensajes: 27



Ver Perfil
Re: SQL--Where fechas (Condición de fechas)
« Respuesta #14 en: 5 Marzo 2010, 18:35 pm »

Pues puro SQL

Código
  1.  
  2. SELECT COUNT(SALARIO) INTO SUMA FROM EJEMPLO WHERE FECHA > '31-DEC-08' AND SUBSTR((TO_CHAR(FECHA, 'DD/MM/YY')), 4, 2) = a;
  3.  
  4.  



Nuca había utilizado "SUBSTR"..mmm lo probaré :-\
Gracias Saludos ;D
En línea

^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: SQL--Where fechas (Condición de fechas)
« Respuesta #15 en: 5 Marzo 2010, 19:02 pm »

Bueno en el caso que expuse, utilize SUBSTR por la siguiente razon:

Código
  1. (TO_CHAR(FECHA, 'DD/MM/YY'))
  2.  

Eso bien sabes retorna la fecha como '00/00/0000' en vez de '00-MES-00'

Y utilizo SUBSTR para que empieze a contarme en el caracter numero 4 hacia la derecha, y me cuente solo 2 posiciones.. 4 y 5 que corresponde al mes. Fijate:

25/02/2009

Donde:

25 : Es el dia del mes, corresponde a 2 caracteres que son caracter 1 = 2 y caracter 2 = 5

/ : Barra de separacion de la fecha corresponde al caracter numero 3

02 : Mes correspondiente del año, donde el 0 = 4 caracter y el 2 = 5 caracter.

Como solo requiero en mi caso, el mes del año del que se habla, solo tomo 2 caracteres a partir del 4 caracter leido  ;) (Por eso uso SUBSTR)

Código
  1. SUBSTR((TO_CHAR(FECHA, 'DD/MM/YY')), 4, 2) = a;
  2.  

El resultado final de SUBSTR((TO_CHAR(FECHA, 'DD/MM/YY')), 4, 2)  es 02 que corresponde a Febrero, = a  'a' es una variable que contiene un valor entero, en tu caso puedes sustituir a 'a' por un numero entero del mes, en este caso si coloco en su lugar 02 y existen registros en la tabla del mes FEBRERO se contaran todos y se retornara al finalize que para el mes 2 (FEBRERO) existen X cantidad de registros...

Un saludo  ;)
« Última modificación: 5 Marzo 2010, 19:04 pm por ^TiFa^ » En línea

noobdai

Desconectado Desconectado

Mensajes: 27



Ver Perfil
Re: SQL--Where fechas (Condición de fechas)
« Respuesta #16 en: 6 Marzo 2010, 17:38 pm »

Ok. ;-)

Muchas gracias Tifa :)

Saludos
En línea

Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Calcular Diferencia de Fechas
Programación C/C++
barbara87 4 11,212 Último mensaje 16 Junio 2012, 17:17 pm
por david_BS
SUMA DE DOS FECHAS
Dudas Generales
GACHEFABI 2 3,515 Último mensaje 11 Diciembre 2011, 21:42 pm
por Aberroncho
horas y fechas
PHP
kakashi20 3 2,755 Último mensaje 17 Marzo 2012, 02:40 am
por dark_sargon
ORDENACION DE NOTAS POR FECHAS EN JAVA.
Java
el_otro_yo 8 6,168 Último mensaje 19 Mayo 2012, 17:38 pm
por RyogiShiki
Fechas en JSP
Desarrollo Web
SanMagic 0 1,755 Último mensaje 17 Mayo 2012, 22:54 pm
por SanMagic
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines