Ejemplos en SQL de query

La verdad haz demostrado que sabes mucho, quisiera que me recomendaras algunas páginas donde salgan algunos ejemplos prácticos de como emplear cast, when y algunos comandos más ya que existen infinidad de páginas pero no muy practicas o si no tu me podrías enviar algunos ejemplos prácticos

1 respuesta

Respuesta
1
La mejor documentación es la propia del SQL, tiene ejemplos prácticos en la parte inferior y te da todo el marco teórico, cualquier consulta particular que tengas puedes hacérmela pero antes te recomiendo que leas dicha documentación.
Hola experto, bueno tengo estas tablas llenas de datos
select * from actividad
select * from departamento
select * from empleado
Y el query de ejemplo e:
select e.emp_nombre,d.depto_nombre,a.act_fecha,a.act_descripcion
    from actividad a
        inner join empleado e
        on a.act_emp_id = e.emp_id
        inner join departamento d
        on e.depto_id = d.depto_id
me muestra el nombre del empleado, su departamento, la fecha de actividad y la descripcion de su actividad, pero quiero que el primer campo que salga no sea nombre del empleado si no el numero de registro correspondiente.
Haaa y gracias por la pronta respuesta.
Bueno entiendo que quieres que al costado del nombre del empleado aparezca el numero de registro, es decir una numeración que comience en 1 hasta la cantidad de registros que aparezcan, si ese es el caso te servirá esto:
select ROW_NUMBER() OVER(ORDER BY e.emp_nombre, a.act_fecha) AS NroRegistro,
e.emp_nombre,
d.depto_nombre,
a.act_fecha,
a.act_descripcion
from actividad a inner join empleado e on a.act_emp_id = e.emp_id
inner join departamento d on e.depto_id = d.depto_id
Me sale el mensaje de:
'ROW_NUMBER' no es un nombre de función reconocido.
Creo que cometí una omisión al no preguntarte que version SQL tienes, el código que te he enviado es para SQL 2005, confirma.
Estoy usando el sql 2000
En ese caso para poder generar una numeración de registros puedes crear una variable tabla que contenga como primer campo uno tipo identity...
Revisa esto:
Declare @tabla table(
Nroregistro int identity(1, 1),
emp_nombre varchar(50),
act_fecha datetime,
act_descripcion varchar(100)
)
insert into @tabla
select e.emp_nombre,
d.depto_nombre,
a.act_fecha,
a.act_descripcion
from actividad a inner join empleado e on a.act_emp_id = e.emp_id
inner join departamento d on e.depto_id = d.depto_id
select *
From @tabla
Gracias experto por la ayuda, aprovechando la oportunidad quería consultarte sobre la resta de 50 días en un campo fecha_vencida la sintaxis ¿debe ser la siguiente?
SET fecha_vencida = dateadd(day,- 50,fecha_vencida)
Y si no es así como debería ser
Así es, esa es la sintaxis correcta.
No te olvides de cerrar la pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas