gpt4 book ai didi

c++ - Sqlite根据点信息生成距离表

转载 作者:行者123 更新时间:2023-11-30 01:13:36 24 4
gpt4 key购买 nike

我有一个表格,其中包含几个点的坐标。

| PointName | XCoor | YCoor |
+-----------+-------+-------+
| P1 | X1 | Y1 |
+-----------+-------+-------+
| P2 | X2 | Y2 |
+-----------+-------+-------+
....

我想生成一个包含两点之间距离的表格。

| Point1Name | Point2Name | Distance |
+------------+------------+----------+
| P1 | P2 | ZZZZZ |
+------------+------------+----------+
....

为了能够计算两点之间的距离,我启用了动态扩展加载并使用了 extension-functions module用于算术计算。但是,我不太确定是否可以使用任何类型的 SQL 技巧创建输出表?

我需要在 C++ 程序中使用此功能,因此在最坏的情况下,我会尝试以 C++ 方式执行此操作,而不是使用 SQL 语句。然而,这将需要我使用 sqlite3_exec()并定义我的回调函数,很可能我最终会运行另一个 sqlite3_exec()在第一个回调函数中获得所需的输出。

提前致谢

最佳答案

此 SQL 将为您生成一个表:

create table distances as
select a.PointName as Point1Name, b.PointName as Point2Name,
sqrt((a.XCoor - b.XCoor) * (a.XCoor - b.XCoor) + (a.YCoor - b.YCoor) * (a.YCoor - b.YCoor)) as Distance
from points a, points b
where a.rowid != b.rowid

但您真的需要在表格中使用它吗?当您想要获取值时,您可以只执行 select 语句。

关于c++ - Sqlite根据点信息生成距离表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31800831/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com