繁体   English   中英

用于从数据库中选择所有表的公式查询

[英]Formula Query For Selecting all tables from database

我的数据来自PostGreSQL的两个表这是一个表

wv1           rv1
341.6         2.48
343.6         2.58
344.7         2.37
346.3         2.32
347.9         2.29
349.5         2.36
351.1         2.23
352.6         2.24
354.2         2.25
355.8         2.29
357.4         2.28
358.9         2.23

另一个表为

wv2        rv2
341.6      8.24
343.1      8.17
344.7      8.19
346.3      8.13
347.9      8.14
349.5      8.09
351.1      8.09
352.6      8.13
354.2      8.21
355.8      8.24
357.4      8.27
358.9      8.29

我正在使用数据rv1和rv2,公式为**

  • 我= ACOS [rv1.rv2 / | rv1 |。| rv2 |]

** 那是 **

  • I = Acos [(((2.38 * 8.24)+(2.58 * 8.17)+(2.37 * 8.19)+ .....)/ sqrt((2.38 * 2.38)+(2.58 * 2.58)+(2.37 * 2.37)+ ....)* sqrt((8.24 * 8.24)+(8.17 * 8.17)+(8.19 * 8.19)+ ....)]

**对此的PostGreSQL查询是

select
    acos(sum(t1.rv1 * t2.rv2) / (
        sqrt(sum(power(t1.rv1, 2))) * sqrt(sum(power(t2.rv2, 2)))
    )) as i
from
    t1
    inner join
    t2 on t1.wv1 = t2.wv2

在此查询中,我想比较数据库中的所有表,而不是table2(t2)

SELECT table_name FROM information_schema.tables where table_schema='public' and table_type='BASE TABLE' ORDER BY table_name ASC;";

最终输出

   Ivalue
   0.3559772512926 
   0.52684312

我想在PostGreSQL查询中编写公式,如何编写,请指导我...

select
    acos(sum(t1.rv1 * t2.rv2) / (
        sqrt(sum(power(t1.rv1, 2))) * sqrt(sum(power(t2.rv2, 2)))
    )) as i
from
    t1
    inner join
    t2 on t1.wv1 = t2.wv2

wv1wv2必须unique才能正常工作

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM