事实表中的多个字段指的是一维Qlikview

时间:2017-10-11 21:35:38

标签: qlikview dimensional-modeling

我是Qlikview的新手。 我有一个事实表Fact_Transaction与字段CheckinDate和CheckoutDate。我有一个维度表Dim_Time,Date_ID为PK。

//-------- Start Multiple Select Statements ------
LOAD "Property_SK",
    TotalNoOfDays,
    PerDayCost,
    TotalCost,
    "Guest_FName",
    "Guest_LName",
    "Host_FName",
    "Host_LName",
    CurrRecInd,
    "User_SK_Guest",
    "User_SK_Host",
    "CheckInDate_SK",
    "CheckOutDate_SK";
SQL SELECT *
FROM "Airbnb database".dbo."Fact_Transaction";

LOAD "Date_ID",
    "Calender_Date",
    "Day_of_Week",
    WeekoftheYear,
    WeekoftheMonth,
    DayoftheMonth,
    CalenderYear,
    CalenderMonth,
    CalenderQuarter,
    FiscalYear,
    FiscalQuarter,
    FiscalMonth;
SQL SELECT *
FROM "Airbnb database".dbo."Dim_Time";


//-------- End Multiple Select Statements ------

现在我想在Date_ID上将字段CheckinDate和CheckoutDate与Dim_Time链接。 我如何在Qlikview中实现相同的功能?有什么想法吗?

2 个答案:

答案 0 :(得分:1)

作为两个不同的维度(因此有两个不同的概念),我建议创建两个不同的维度表。像这样:

  • 按原样加载Fact表
  • 为CheckIn维度加载Dim_Time表,将Date_ID列重命名为CheckInDate_SK,作为其他列,例如WeekoftheMonth到CheckInDate_WeekoftheMonth。
  • 加载(再次)CheckOut维度的Dim_Time表,将Date_ID列重命名为CheckOutDate_SK,作为其他列,例如WeekoftheMonth到CheckOutDate_WeekoftheMonth。

您可以通过添加“as”关键字来重命名列,例如:

  • Date_ID为CheckInDate_SK

希望这有帮助。

答案 1 :(得分:1)

我建议使用IntervalMatch功能:参见here 它是一个非常强大的功能。

请按照帮助中的示例案例进行操作 - 它应该与您的案例非常相似。