I'm currently working on a functionality that involves view with huge dataset in Appian and I am planning to replace it with record relationship. I have a situation where I'm using a left join with a table and implementing a self-join with three conditions using the AND operator.
Here's the view that I want to replace.
SELECT `snapFrom`.`id` AS `id`, `snapFrom`.`material` AS `material`, CAST( `snapFrom`.`FCFinalTotal` AS DOUBLE ) AS `FCFinalTotalFrom`, CAST(`snapTo`.`FCFinalTotal` AS DOUBLE) AS `FCFinalTotalTo`, `snapFrom`.`snapshot` AS `snapFrom`, `snapTo`.`snapshot` AS `snapTo`, `snapTo`.`FCFinalTotal` - `snapFrom`.`FCFinalTotal` AS `diffValue`, CONCAT( SUBSTRING_INDEX(`snapFrom`.`calWeek`, '.', -1), '.', SUBSTRING_INDEX(`snapFrom`.`calWeek`, '.', 1) ) AS `calWeek`, `m`.`basecode` AS `baseCode`FROM ( ( `Appian`.`SOE_STAGING_FORECAST_WEEKLY` `snapFrom` LEFT JOIN `Appian`.`SOE_STAGING_FORECAST_WEEKLY` `snapTo` ON ( `snapFrom`.`calWeek` = `snapTo`.`calWeek` AND `snapFrom`.`material` = `snapTo`.`material` AND `snapFrom`.`companyCode` = `snapTo`.`companyCode` ) ) LEFT JOIN `Appian`.`SOE_MaterialMasterData` `m` ON ( `m`.`material` = `snapFrom`.`material` AND `m`.`companyCode` = `snapFrom`.`companyCode` ) )WHERE `m`.`basecode` IS NOT NULL
I have created three records and established the relationship, but i am struggling to add join condition, can someone advice how we can add these join conditions.
Discussion posts and replies are publicly visible
To replace databsae view with Appian record relationship, you need to establish relationship with all necessary tables by using the common (foreign) key and then use the custom fields to achieve the view like representation.