I have a number of individual notes for various books I’ve read, with a YAML field for “author.” This works great with Dataview, except when there are multiple authors of a book. I assumed I could just add another YAML line “author: Sample Author” to add the second author, but then Dataview does not return results for either author.

Does anyone know how to change my query so it will return results for either author? Is this possible?

My current search is:

dataview TABLE without ID link(file.link, title) as "Title", author FROM #books Where author = "Sample Author"

  • surrendertogravity@wayfarershaven.eu
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 year ago

    Just mentioning to cover all the bases: you’ll want to make sure you’re using the correct multi-value YAML syntax in your front-matter when you include multiple authors (eg. single line or multi line array). I like using the Linter plugin to help me out with this.

    # single-line array
    author: [Sam Jones, Mary Apple]
    
    # multi-line array
    author:
    - Sam Jones
    - Mary Apple
    

    Once you have something like the above, using flatten should enable returning results for either author; with one test file in my vault, this worked for me:

    TABLE WITHOUT ID
    link(file.link, title) as "Title", author FROM #books FLATTEN author WHERE author = "Sam Jones"
    
    • Windexhammer@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I used this for my recipe notes:

      ingredients:
      - name     : Carrots
        quantity : 2
        units    : ""
        format   : grated
      - name     : Curry Powder
        quantity : 1
        units    : tbsp
      - name     : Onion
        quantity : 1
        format   : sliced
      

      And then use FLATTEN ingredients to create a nicely formatted table of ingredients.