La nueva columna en la tabla que es el resultado de la función de SQL Server se ejecutó con el parámetro de la misma tabla.

Un usuario Pregunto ✅

Anónimo

Así que tengo una tabla / consulta configurada, y necesito agregar algo de información a esa tabla, con una nueva columna.

No puedo calcular el resultado con DAX, así que creé una función en mi SQL Server.

Visualizado con tablas simples:

Reservas de tabla: (Role Booker es quien reservó la sala, role Guest es alguien que se une a él)

[Booking_ID] [Person_ID] [Name] [Hotel_ID] [(New Column)County] [Role]

1234 1 Condado de Andrew 11 Invitado

1234 2 Condado de Mark 1 1 Booker

Ahora, el condado se almacena en Persona, pero solo el que tiene el rol de «Booker» completa su condado.

Entonces, la persona con ID = 1 no tiene condado. Pero puedo usar «Booking_ID» para obtener el condado.

Entonces, ¿hay alguna manera de decir que el valor de la columna X es el resultado de una función con un solo parámetro de la tabla de muestra?

Lo siento si esto no está claro, avíseme si tiene alguna pregunta.

La cosa es que hay una relación increíble entre las tablas.

ibarrau

Hola. Ok, supongamos que ha fusionado la tabla con person_id para obtener el país así:

countryFillProblemcountryFillProblem

Tiene sus datos solo para los reservantes, pero también los quiere para los huéspedes en la misma identificación de reserva.

Luego, reordene los datos de forma ascendente por Booking_Id y Role:

= Table.Sort(#"LastStep",{{"Booking_ID", Order.Ascending},{"Role", Order.Ascending}})

Después de esto, podrá Rellenar hacia abajo la columna del país con datos.

FillDownCountryFillDownCountry

Ahí tienes tu resultado.

Saludos,

ibarrau

Hola. Ok, supongamos que ha fusionado la tabla con person_id para obtener el país así:

countryFillProblemcountryFillProblem

Tiene sus datos solo para los reservantes, pero también los quiere para los huéspedes en la misma identificación de reserva.

Luego, reordene los datos ascendiendo por Booking_Id y Role:

= Table.Sort(#"LastStep",{{"Booking_ID", Order.Ascending},{"Role", Order.Ascending}})

Después de esto, podrá Rellenar hacia abajo la columna del país con datos.

FillDownCountryFillDownCountry

Ahí tienes tu resultado.

Saludos,

Anónimo

En respuesta a ibarrau

¡Hola!

¡Gracias por la respuesta!
Ya encontré otra solución, bastante similar a la tuya.
Creé una tabla combinada de Persona y Reserva, y luego usé el explorador de datos para filtrar todos los valores nulos hasta que me quedé con solo dos columnas (Booking_ID y País), luego fusioné esta «tabla de búsqueda» con la tabla que realmente necesitaba en.

Podría ser una solución peor que la suya, así que buscaré implementar su solución.

¡Gracias!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *