# Lifting function in Query.jl

**URL:** <https://discourse.julialang.org/t/lifting-function-in-query-jl/96599>\
**Category:** Data\
**Tags:** query, queryverse\
**Created:** [March 25, 2023, 2:37pm UTC](https://discourse.julialang.org/t/lifting-function-in-query-jl/96599 "2023-03-25T14:37:36Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![myrddin89](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/myrddin89/32/7087_2.png) [@myrddin89](https://discourse.julialang.org/u/myrddin89)\
**Post date:** [March 25, 2023, 2:37pm UTC](https://discourse.julialang.org/t/lifting-function-in-query-jl/96599/1 "2023-03-25T14:37:36Z")

</div>

I’m having troubles using the lifting functionality in Query.jl and DataValues.jl with dot syntax.

If I simply try the following

```julia
using DataValues
a = DataValue(0.4)
a .* 2

```

I get the this error:

```julia
ERROR: MethodError: no method matching length(::DataValue{Float64})

```

How is this supposed to work?

Julia version:

```julia
Julia Version 1.9.0-rc1
Commit 3b2e0d8fbc1 (2023-03-07 07:51 UTC)
Platform Info:
  OS: macOS (arm64-apple-darwin21.4.0)
  CPU: 8 × Apple M1 Pro
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-14.0.6 (ORCJIT, apple-m1)
  Threads: 4 on 6 virtual cores

```

Query.jl version: 1.0.0  
DataValues.jl vesion: 0.14.13

---

<div class="post-metadata">

**Author:** ![davidanthoff](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/davidanthoff/32/223493_2.png) [@davidanthoff](https://discourse.julialang.org/u/davidanthoff)\
**Post date:** [March 25, 2023, 6:03pm UTC](https://discourse.julialang.org/t/lifting-function-in-query-jl/96599/2 "2023-03-25T18:03:34Z")

</div>

Lifting via dot got lost in the transition to Julia 1.0… Still hope to get it back at some point.

I think for your example you can just do `a * 2` and that should work, i.e. for most of the common operations lifting happens automatically.

---

<div class="post-metadata">

**Author:** ![myrddin89](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/myrddin89/32/7087_2.png) [@myrddin89](https://discourse.julialang.org/u/myrddin89)\
**Post date:** [March 25, 2023, 6:17pm UTC](https://discourse.julialang.org/t/lifting-function-in-query-jl/96599/3 "2023-03-25T18:17:19Z")

</div>

I see… thanks. Maybe I was misinformed because it is still mentioned in the docs somewhere.

Actually, my use case is more complicated: I need to convert a `Decimal` to a `Float*` but the conversion it’s not lifted. So I ended up doing something like this:

```julia
@mutate(a=Float64(_.a[]))

```

filtering first missing values. Or one can define a conversion function that accepts `DataValue`s, but I didn’t find anything automatic.
