aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/clickhouse/src/Functions/less.cpp
blob: 63bfcfc9f4008d8e21abadb34d40f2cee16df8b0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <Functions/FunctionFactory.h>
#include <Functions/FunctionsComparison.h>


namespace DB
{

using FunctionLess = FunctionComparison<LessOp, NameLess>;

REGISTER_FUNCTION(Less)
{
    factory.registerFunction<FunctionLess>();
}

template <>
ColumnPtr FunctionComparison<LessOp, NameLess>::executeTupleImpl(
    const ColumnsWithTypeAndName & x, const ColumnsWithTypeAndName & y, size_t tuple_size, size_t input_rows_count) const
{
    auto less = FunctionFactory::instance().get("less", context);

    return executeTupleLessGreaterImpl(
        less,
        less,
        FunctionFactory::instance().get("and", context),
        FunctionFactory::instance().get("or", context),
        FunctionFactory::instance().get("equals", context),
        x, y, tuple_size, input_rows_count);
}

}