小编Lar*_*Br.的帖子

boost::hana 如何检查类型是否为 std::可选?

我搜索了boost::hana::traits我找不到任何与检查类型概念相关的内容。例如 is_vector、is_Optional。hana 有没有什么工具可以简化这个?此外,我想根据结果对代码进行分支,因此需要在 hana::eval_if 中使用它。谁能给我举一些例子吗?

我想按照以下方式工作:

hana::eval_if(
    is_vector(hana::decltype_(val)),
    [&](auto _) {std::cout << "is vector\n";},
    [&](auto _) {
        hana::eval_if(
                is_optional(hana::decltype_(val)),
                [&](auto _) { std::cout << "is optional\n"; },
                [&](auto _) { std::cout << "neither vector nor optional\n"; }
        );
    }
);
Run Code Online (Sandbox Code Playgroud)

c++ boost boost-hana

3
推荐指数
1
解决办法
3111
查看次数

提升hana index_if并输入

我想知道为什么在这段代码中,类型i是一个空的可选项.

auto t = boost::hana::make_tuple(boost::hana::type_c<int>, boost::hana::type_c<double>);
auto i = boost::hana::index_if(t, boost::hana::is_a<boost::hana::type<double>>);
Run Code Online (Sandbox Code Playgroud)

对我来说应该是 optional<hana::size_t<1>>

我知道有Boost hana得到第一个匹配的索引,但它不是完全相同的问题

c++ boost boost-hana

2
推荐指数
1
解决办法
81
查看次数

如何在 sap hana DB 中搜索带有时间戳的两个日期之间的数据

询问

SELECT  * FROM "DD"."kidos.dd.data::DD_RECEIVE_NOTIFICATION_TBL" 
WHERE RECEIVED_DATE between 
DATE("2017-11-28T04:41:00.000Z") and DATE("2017-12-01T04:42:00.000Z"); 
Run Code Online (Sandbox Code Playgroud)

我有两个带时间戳的日期。我必须搜索两个日期之间的数据。哈纳DB我initailized"RECEIVED_DATE"TIMESTAMP。如何在两个日期时间过滤数据。

sql hana

0
推荐指数
1
解决办法
1万
查看次数

HANA 'Order By' 对字符串进行二进制排序

SAP HANA 在按字符串排序时给出了不好的结果,因为它似乎是根据每个字符的十六进制代码排序的?像“Ö”这样的德语特殊字符在 Z 之后(应该在 O 之后)像这样。

list_of_names

-Oname
-Öname
-Zname
Run Code Online (Sandbox Code Playgroud)
SELECT name
FROM list_of_names
ORDER BY name
Run Code Online (Sandbox Code Playgroud)

==> 奥名、兹名、奥名

有什么方法可以使 HANA 以正确的方式对文本进行排序(例如 MSSQL 的“整理”)?

sql hana

0
推荐指数
1
解决办法
276
查看次数

标签 统计

boost ×2

boost-hana ×2

c++ ×2

hana ×2

sql ×2