domingo, octubre 17, 2021

Como crear una función en SQL que nos retorne una tabla

Esta función que creamos nos retorna una tabla, luego esta la podríamos utiliza como otra tabla e invocarla en el FROM de algún select.

Este ejemplo retorna todos los usuarios «hijos» del usuario consultado, pero bien podría funcionar con otro tipo de consulta mas elaborada.

CREATE FUNCTION FN_TEC_TraerUsuariosRelaciones(
@nom_usuario_padre as varchar(100))
RETURNS TABLE
AS
RETURN (
SELECT distinct
hijo.name as «NombreHijo»,
hijo.edad as «EdadaHijo»
FROM
t_usuarios padre,
t_usuarios hijo
WHERE
padre.nombre = coalesce(@nom_usuario_padre,padre.nombre)
)

Luego en otra consulta podriamos invocar esta función de la siguiente forma:

Select * from FN_TEC_TraerUsuariosRelaciones(«Carlos»)




Roy Rojashttp://www.dotnetcr.com
Con más de 20 años de experiencia en programación, experto en lenguajes .NET, VB, C#, ASP.NET, Xamarin, XCode, DBA en SQL Server. Creador de dotnetcr.com, sitio web para programadores en español. royrojas.com | dotnetcr.com | GitHub

Redes Sociales

2,736FansMe gusta
326SeguidoresSeguir

Popular esta semana

SQL Server - Merge

MERGE en SQL Server para Insert, Delete y Update con dos tablas

Ejemplo práctico usando MERGE para sincronizar dos tablas, Insert, Update y Delete en un solo query. Válido para SQL SERVER 2008 o superior.

Calcular la distancia entre dos puntos geográficos en SQL Server

En este ejemplo mostramos como calcular la distancia en metros o kilómetros entre dos puntos geográficos, por latitud y longitud. El resultado lo obtenemos en metros o kilómetros.

SQL Server: Error 3414, servicio no inicia

El error 3414 se produce generalmente cuando el motor de la base de datos SQL Server sufre algún evento imprevisto. Aquí lo solucionamos.

Últimos artículos

Flutter - Instagram Clone App

Instagram Clone App con Flutter

Marvin Stanley Valenzuela nos comparte un reto y genialidad a la vez, excelente práctica de la que podemos aprender mucho, diseñó en...

¿Cómo agregar una IP adicional en una VM Ubuntu en Azure?

Lo más común al momento de crear y configurar un nuevo servidor es que a este le asigne un solo IP, pero...
flutter one year

Después de un año con Flutter, esto es lo que aprendí

La historia comenzó cuando un día desperté pensando en tener un nuevo proyecto personal. Me dije a mí misma que hay muchas...
promocionar app

Cómo promocionar gratis tu app usando tappx

Como todos los que me siguen y mis redes sociales sabrán, recientemente lancé mi primera aplicación, pero más allá del desafío tecnológico de...