Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

The Power BI DataViz World Championships are on! With four chances to enter, you could win a spot in the LIVE Grand Finale in Las Vegas. Show off your skills.

Reply
JG_Austra
New Member

create column in new table based on a conditional select in another table

Hi - I want to create a table with all days, that looks up the Filesemester Table to return the Semester based on the DateTable.Date, which must be between Filesemester.StartDate and Filesemester.EndDate
Help please 🙂
 
DateTable =
ADDCOLUMNS(
    CALENDAR(DATE(2016,1,1), DATE(2024,12,31)),
    "Year", YEAR([Date]),
    "Month Number", MONTH([Date]),
    "TermofYear",
    VAR filteredTerm =
            FILTER(
                FileSemesters,
                (FileSemesters[StartDate] < [Date] &&   FileSemesters[EndDate] > [Date] ) )
       I just want the Semester column that is in the FileSemester table.  
    RETURN filteredTerm
)
2 ACCEPTED SOLUTIONS
Jihwan_Kim
Super User
Super User

Hi,

I am not sure how your expected result looks like, but I tried to create a sample pbix file like below.

Please check the below picture and the attached pbix file.

In the sample, I tried to use GENERATE DAX Function to create a new table.

 

GENERATE function (DAX) - DAX | Microsoft Learn

 

Jihwan_Kim_0-1732681736097.png

 

DateTable = 
GENERATE (
    ADDCOLUMNS (
        CALENDAR ( DATE ( 2021, 1, 1 ), DATE ( 2024, 12, 31 ) ),
        "Year", YEAR ( [Date] ),
        "Month Number", MONTH ( [Date] )
    ),
    SELECTCOLUMNS (
        FILTER (
            FileSemesters,
            ( FileSemesters[StartDate] <= [Date]
                && FileSemesters[EndDate] >= [Date] )
        ),
        "TermOfYear", FileSemesters[Semesters]
    )
)

 

 

 

If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.


Visit my LinkedIn page by clicking here.


Schedule a meeting with me to discuss further by clicking here.

View solution in original post

Kedar_Pande
Super User
Super User

@JG_Austra 

DateTable =
ADDCOLUMNS(
CALENDAR(DATE(2016, 1, 1), DATE(2024, 12, 31)),
"Year", YEAR([Date]),
"Month Number", MONTH([Date]),
"Semester",
VAR currentDate = [Date]
RETURN
MAXX(
FILTER(
FileSemesters,
FileSemesters[StartDate] <= currentDate &&
FileSemesters[EndDate] >= currentDate
),
FileSemesters[Semester]
)
)

You can then use this DateTable in your model to relate dates to semesters seamlessly.

 

 

💌 If this helped, a Kudos 👍 or Solution mark would be great! 🎉
Cheers,
Kedar
Connect on LinkedIn

View solution in original post

3 REPLIES 3
FreemanZ
Super User
Super User

hi @JG_Austra ,

 

try like:

DateTable =
ADDCOLUMNS(
    CALENDAR(DATE(2016,1,1), DATE(2024,12,31)),
    "Year", YEAR([Date]),
    "Month Number", MONTH([Date]),
    "TermofYear",
    VAR filteredTerm =
        MAXX(
            FILTER(
                FileSemesters,
                (FileSemesters[StartDate] < [Date] &&   FileSemesters[EndDate] > [Date] ) 
            ),
             FileSemesters[Semester]
        )
    RETURN filteredTerm
)

Kedar_Pande
Super User
Super User

@JG_Austra 

DateTable =
ADDCOLUMNS(
CALENDAR(DATE(2016, 1, 1), DATE(2024, 12, 31)),
"Year", YEAR([Date]),
"Month Number", MONTH([Date]),
"Semester",
VAR currentDate = [Date]
RETURN
MAXX(
FILTER(
FileSemesters,
FileSemesters[StartDate] <= currentDate &&
FileSemesters[EndDate] >= currentDate
),
FileSemesters[Semester]
)
)

You can then use this DateTable in your model to relate dates to semesters seamlessly.

 

 

💌 If this helped, a Kudos 👍 or Solution mark would be great! 🎉
Cheers,
Kedar
Connect on LinkedIn

Jihwan_Kim
Super User
Super User

Hi,

I am not sure how your expected result looks like, but I tried to create a sample pbix file like below.

Please check the below picture and the attached pbix file.

In the sample, I tried to use GENERATE DAX Function to create a new table.

 

GENERATE function (DAX) - DAX | Microsoft Learn

 

Jihwan_Kim_0-1732681736097.png

 

DateTable = 
GENERATE (
    ADDCOLUMNS (
        CALENDAR ( DATE ( 2021, 1, 1 ), DATE ( 2024, 12, 31 ) ),
        "Year", YEAR ( [Date] ),
        "Month Number", MONTH ( [Date] )
    ),
    SELECTCOLUMNS (
        FILTER (
            FileSemesters,
            ( FileSemesters[StartDate] <= [Date]
                && FileSemesters[EndDate] >= [Date] )
        ),
        "TermOfYear", FileSemesters[Semesters]
    )
)

 

 

 

If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.


Visit my LinkedIn page by clicking here.


Schedule a meeting with me to discuss further by clicking here.

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

FebPBI_Carousel

Power BI Monthly Update - February 2025

Check out the February 2025 Power BI update to learn about new features.

Feb2025 NL Carousel

Fabric Community Update - February 2025

Find out what's new and trending in the Fabric community.