代码之家  ›  专栏  ›  技术社区  ›  Wizhi

使用DAX公式将文本显示为值幂轴

  •  2
  • Wizhi  · 技术社区  · 6 年前

    有没有办法使用DAX度量值来创建包含文本值的列,而不是它将自动给出的数字和/计数?

    enter image description here

    数据表:

    +----+------------+------------+---------------+-------+-------+
    | id | first_name | last_name  |   currency    | Sales | Stock |
    +----+------------+------------+---------------+-------+-------+
    |  1 | Giovanna   | Christon   | Peso          |    10 |    12 |
    |  2 | Roderich   | MacMorland | Peso          |     8 |    10 |
    |  3 | Bond       | Arkcoll    | Yuan Renminbi |     4 |     6 |
    |  1 | Giovanna   | Christon   | Peso          |    11 |    13 |
    |  2 | Roderich   | MacMorland | Peso          |     9 |    11 |
    |  3 | Bond       | Arkcoll    | Yuan Renminbi |     5 |     7 |
    |  1 | Giovanna   | Christon   | Peso          |    15 |    17 |
    |  2 | Roderich   | MacMorland | Peso          |    10 |    12 |
    |  3 | Bond       | Arkcoll    | Yuan Renminbi |     6 |     8 |
    |  1 | Giovanna   | Christon   | Peso          |    17 |    19 |
    |  2 | Roderich   | MacMorland | Peso          |    11 |    13 |
    |  3 | Bond       | Arkcoll    | Yuan Renminbi |     7 |     9 |
    +----+------------+------------+---------------+-------+-------+
    
    2 回复  |  直到 6 年前
        1
  •  2
  •   Marco Vos    6 年前

    不需要DAX。你应该把 first_name 行上的字段,而不是值上的字段。选择 Tabular View 用于报表布局。这样地:

    enter image description here

        2
  •  0
  •   Wizhi    6 年前

    经过一番搜索,我找到了4种方法。

    =IF(COUNTROWS(VALUES(Table1[first_name])) > 1, BLANK(), VALUES(Table1[first_name]))
    

    度量值2(如果值不同,则返回空白):

    =CALCULATE(
    VALUES(Table1[first_name]),
    FILTER(Table1,
    COUNTROWS(VALUES(Table1[first_name]))=1))
    

    =CONCATENATEX(Table1,[first_name]," ")
    

    对于非常大的数据集,这种连接似乎效果更好:

    =CALCULATE(CONCATENATEX(VALUES(Table1[first_name]),Table1[first_name]," "))
    

    enter image description here