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

Procedimientos Almacenados---> AYUDA!!!!

Estas en el tema de Procedimientos Almacenados---> AYUDA!!!! en el foro de SQL Server en Foros del Web. Hola necesito su ayuda,estoy tratando de encontrar un ejemplo de un procedimiento almacenado en sql server que permita devolver la fecha del sistema. Y otro ...
  #1 (permalink)  
Antiguo 23/04/2008, 11:00
 
Fecha de Ingreso: abril-2008
Mensajes: 1
Antigüedad: 16 años
Puntos: 0
Procedimientos Almacenados---> AYUDA!!!!

Hola necesito su ayuda,estoy tratando de encontrar un ejemplo de un procedimiento almacenado en sql server que permita devolver la fecha del sistema. Y otro que permita calcular la edad en años del cliente (recibe como parametro de entrada RUC_cliente y entrada/salida edad), tambien que permita calcular la antiguedad en meses del mismo cliente.

Por favor necesito este ejemplo porque estoy empezando recien a saber lo basico de SQL server

Gracias!!!!

Lory
  #2 (permalink)  
Antiguo 23/04/2008, 12:52
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Re: Procedimientos Almacenados---> AYUDA!!!!

Para obtener la fecha del sistema:

SELECT GETDATE()

Ahora bien, para calcular EDAD, te refieres a EDAD DE NACIMIENTO?
  #3 (permalink)  
Antiguo 23/04/2008, 14:23
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Re: Procedimientos Almacenados---> AYUDA!!!!

La edad seria asi:
Código:
CREATE PROCEDURE dbo.sp_GetEdad
(
    @ruc varchar(11)
)
AS
SELECT nombre, apellido, DATEDIFF(yy, GETDATE(), fecha_nacimiento) AS edad 
FROM clientes
WHERE ruc = @ruc
Por cierto, bienvenida a FDW.
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #4 (permalink)  
Antiguo 23/04/2008, 18:04
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Re: Procedimientos Almacenados---> AYUDA!!!!

flaviovich

Ese calculo da un numero negativo, habria que cambiar de posicion las variables.

Si se desea obtener AÑOS-MESES-DIAS.

declare @años as integer
declare @meses as integer
declare @dias as integer
declare @fecha as datetime
declare @hoy as datetime

set @fecha = '19600407'
set @hoy = getdate()
set @años = datediff("yy", @fecha, @hoy)
if dateadd("yy", @años, @fecha) > @hoy set @años = @años - 1
set @fecha = dateadd("yy", @años, @fecha)
set @meses = datediff("mm", @fecha, @hoy)
if dateadd("mm", @meses, @fecha) > @hoy set @meses = @meses - 1
set @fecha = dateadd("mm", @meses, @fecha)
set @dias = datediff("dd", @fecha, @hoy)
set @fecha = dateadd("dd", @dias, @fecha)
print 'Tu edad es de ' + ltrim(str(@años)) + ' años ' + ltrim(str(@meses)) + ' meses y ' + ltrim(str(@dias)) + ' días.'
  #5 (permalink)  
Antiguo 24/04/2008, 08:21
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
De acuerdo Edad segun RUC

Cita:
Iniciado por iislas Ver Mensaje
flaviovich

Ese calculo da un numero negativo, habria que cambiar de posicion las variables.
Es cierto, esta al reves.
Código:
CREATE PROCEDURE dbo.sp_GetEdad
(
    @ruc varchar(11)
)
AS
SELECT nombre, apellido, DATEDIFF(yy, fecha_nacimiento, GETDATE()) AS edad 
FROM clientes
WHERE ruc = @ruc
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
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

SíEste tema le ha gustado a 1 personas




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