Forum Discussion

marrasate's avatar
marrasate
Regular Visitor
4 years ago
Solved

Get all values between 2 strings

Hi,

 

I'm trying to get all values between two string values. For example, from 1A00000 to 2Z99999. How can i do it?

 

I have this table:

FROMTOVALUE
1A000002Z99999Value 1
3A000007Z99999Value 2
8A000008Z99999Value 3
9A000009Z99999Value 4

 

I need a filter to check if i ask for register "1B45877" returns Value 1. If i ask for "8G74584" returns Value 3...

  • If the table provided is TableK and these values 1B45877, 8G74584 are in a table (TableP) - which is not connected with a relationship -

    and are then pulled in to a table visual, you can create a measure :

    MeasureA = VAR _PVal = MIN(TableP[Column1])
    RETURN
    CALCULATE(MIN(TableK[VALUE]), TableK[FROM] <= _PVal && TableK[TO] >= _PVal) 

     This will require testing because it relies on < , > working for the alphabetical comparison so I suggest testing edge cases.  In my head it feels OK but I may be wrong.

7 Replies

  • marrasate , Create a measure and plot it with the required column

     

    countrows(filter(Table, Table[column] >= '1A00000'  and Table[column]<= '2Z99999' ))

  • HotChilli's avatar
    HotChilli
    Community Champion

    Are you trying to generate the values 1A00000, 1A00001, 1A00002........ in a column?

  • marrasate's avatar
    marrasate
    Regular Visitor

    Im trying to do this:

     

    FROMTOVALUE
    1A000002Z99999Value 1
    3A000007Z99999Value 2
    8A000008Z99999Value 3
    9A000009Z99999Value 4
  • HotChilli's avatar
    HotChilli
    Community Champion

    If you want a good answer you'll have to be clearer about:

    a) what you have to start with

    b) what you want to end with

    c) an explanation of how to get from a) to b) 

    • marrasate's avatar
      marrasate
      Regular Visitor

      I have this table:

      FROMTOVALUE
      1A000002Z99999Value 1
      3A000007Z99999Value 2
      8A000008Z99999Value 3
      9A000009Z99999Value 4

       

      I need a filter to check if i ask for register "1B45877" returns Value 1. If i ask for "8G74584" returns Value 3...

  • HotChilli's avatar
    HotChilli
    Community Champion

    If the table provided is TableK and these values 1B45877, 8G74584 are in a table (TableP) - which is not connected with a relationship -

    and are then pulled in to a table visual, you can create a measure :

    MeasureA = VAR _PVal = MIN(TableP[Column1])
    RETURN
    CALCULATE(MIN(TableK[VALUE]), TableK[FROM] <= _PVal && TableK[TO] >= _PVal) 

     This will require testing because it relies on < , > working for the alphabetical comparison so I suggest testing edge cases.  In my head it feels OK but I may be wrong.

  • v-yalanwu-msft's avatar
    v-yalanwu-msft
    Community Support

    Hi, marrasate ;

    As @HotChilli said , you could use measure as follow:

    Measure = CALCULATE(MAX('Table'[VALUE]),FILTER('Table',[FROM]< MAX('register'[register])&&[TO]>MAX('register'[register])))

    The final output is shown below:

    Best Regards,
    Community Support Team_ Yalan Wu
    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.