Join us for an expert-led overview of the tools and concepts you'll need to pass exam PL-300. The first session starts on June 11th. See you there!
Get registeredPower BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.
Hi all
I have an address table with 3 x columns: ID, Seq#, Address.
I'm trying to concatenate the respective ADDRESS values (to make full address) based on order of SEQ numbers against each ID_NUMBER.
Note: I'm using DirectQuery, not Import.
Your Desired output can be possible but we have to do some modelling with the source data.
Please have a look into the model which is suitable for holding the Address Records
Steps:-
1. Go to the Edit Query
2. Select both SEQ and ADDRESS Column
3. Go to the Transform tab and select Pivot Column(in Advanced option choose Don't Aggregate).
4. Close and Apply
5. Right click on your Dataset and click New Column
6. Paste the DAX
ADDRESS = IF(SEARCH(",",SUBSTITUTE(
CONCATENATE('Address'[0],
CONCATENATE(",",
CONCATENATE('Address'[1],
CONCATENATE(",",
CONCATENATE('Address'[2],
CONCATENATE(",",
CONCATENATE('Address'[3],
CONCATENATE(",",
CONCATENATE('Address'[4],
CONCATENATE(",",
CONCATENATE('Address'[5],
CONCATENATE(",",
CONCATENATE('Address'[6],"")
)
)
)
)
)
)
)
)
)
)
)
),",,",","
)
)=1,REPLACE(SUBSTITUTE(
CONCATENATE('Address'[0],
CONCATENATE(",",
CONCATENATE('Address'[1],
CONCATENATE(",",
CONCATENATE('Address'[2],
CONCATENATE(",",
CONCATENATE('Address'[3],
CONCATENATE(",",
CONCATENATE('Address'[4],
CONCATENATE(",",
CONCATENATE('Address'[5],
CONCATENATE(",",
CONCATENATE('Address'[6],"")
)
)
)
)
)
)
)
)
)
)
)
),",,",","
)
,1,1," "
),SUBSTITUTE(
CONCATENATE('Address'[0],
CONCATENATE(",",
CONCATENATE('Address'[1],
CONCATENATE(",",
CONCATENATE('Address'[2],
CONCATENATE(",",
CONCATENATE('Address'[3],
CONCATENATE(",",
CONCATENATE('Address'[4],
CONCATENATE(",",
CONCATENATE('Address'[5],
CONCATENATE(",",
CONCATENATE('Address'[6],"")
)
)
)
)
)
)
)
)
)
)
)
),",,",","
)
)
Now please note in the Dax we are using SUBSTITUTE function to remove unwanted (comma)
and again using a REPLACE function to remove comma if encountered at first place
User | Count |
---|---|
16 | |
15 | |
14 | |
12 | |
11 |
User | Count |
---|---|
19 | |
15 | |
14 | |
11 | |
10 |