Packages
ecto_ch
0.7.0
0.10.0
0.9.4
0.9.3
0.9.2
0.9.1
0.9.0
0.8.9
0.8.8
0.8.7
0.8.6
0.8.5
retired
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
0.7.5
0.7.4
0.7.3
0.7.2
0.7.1
0.7.0
0.6.6
0.6.5
0.6.4
0.6.3
0.6.2
retired
0.6.1
retired
0.6.0
retired
0.5.1
0.5.0
retired
0.4.1
0.4.0
retired
0.3.10
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.2
0.2.1
0.2.0
0.1.11
0.1.10
0.1.9
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
ClickHouse adapter for Ecto
Current section
Files
Jump to
Current section
Files
lib/ecto/adapters/clickhouse/queryable.ex
defmodule Ecto.Adapters.ClickHouse.Queryable do
@moduledoc false
require Ecto.Query
@doc false
def alter_update_all(name, queryable, [], tuplet) do
alter_update_all(name, queryable, tuplet)
end
def alter_update_all(name, queryable, updates, tuplet) do
query = Ecto.Query.from(queryable, update: ^updates)
alter_update_all(name, query, tuplet)
end
defp alter_update_all(name, queryable, tuplet) do
query = Ecto.Queryable.to_query(queryable)
execute(:alter_update_all, name, query, tuplet)
end
defp execute(:alter_update_all = operation, _name, query, {adapter_meta, opts}) do
%{adapter: adapter, cache: cache, repo: repo} = adapter_meta
{query, opts} = repo.prepare_query(operation, query, opts)
query = Ecto.Query.Planner.attach_prefix(query, opts)
{query_meta, {:nocache, {:update_all, query}}, cast_params, dump_params} =
Ecto.Query.Planner.query(query, :update_all, cache, adapter, 0)
%{select: nil} = query_meta
opts = [cast_params: cast_params] ++ opts
adapter.execute(
adapter_meta,
query_meta,
{:nocache, {operation, query}},
dump_params,
opts
)
end
end