将表中的两个ID匹配到另一个表PgSQL

加姆佐什

因此,在这里,我有一个带有fromcurr_id和tocurr_idexchange_rate表,根据ID的货币名称在另一个表currency中

exchng_rate_id | fromcurr_id | tocurr_id | exchange_rate 
----------------+-------------+-----------+---------------
              1 |           1 |         2 |  5.0000000000
              2 |           1 |         3 |  3.0000000000
              3 |           1 |         4 |  6.0000000000
              4 |           1 |         5 |  2.0000000000
              5 |           2 |         3 |  5.0000000000
              6 |           2 |         4 |  7.0000000000
              7 |           2 |         5 |  3.0000000000
              8 |           3 |         4 |  1.0000000000
              9 |           3 |         5 |  4.0000000000
             10 |           4 |         5 |  2.0000000000

这是货币表的说明:

Column  |          Type          | Collation | Nullable |               Default                
---------+------------------------+-----------+----------+--------------------------------------
 id      | integer                |           | not null | nextval('currency_id_seq'::regclass)
 curr_id | integer                |           | not null | 
 name    | character varying(255) |           |          | 

我需要显示哪个ID属于哪个货币名称。(即fromcurr_id =名称和tocurr_id =名称)

这就是我尝试过的...

Query1:在表上尝试了内部联接,但是结果仅产生fromcurr_id的名称。

select name, fromcurr_id, tocurr_id, name, exchange_rate 
from exchange_rate 
  inner join currency on exchange_rate.fromcurr_id = currency.curr_id;

结果:

      name      | fromcurr_id | tocurr_id |      name      | exchange_rate 
----------------+-------------+-----------+----------------+---------------
 ************** |           1 |         2 | ************** |  5.0000000000
 ************** |           1 |         3 | ************** |  3.0000000000
 ************** |           1 |         4 | ************** |  6.0000000000
 ************** |           1 |         5 | ************** |  2.0000000000
 *************  |           2 |         3 | ************   |  5.0000000000
 ************   |           2 |         4 |**************  |  7.0000000000
 *************  |           2 |         5 | ************   |  3.0000000000
 ************** |           3 |         4 | ************** |  1.0000000000
 ************** |           3 |         5 | ************** |  4.0000000000
 ************** |           4 |         5 | ************** |  2.0000000000
(10 rows)

第一种情况下的名称与第二种情况下的名称相同,但与币种表不同。(必须检查数据的机密性)


Query2:尝试使用两个条件进行内部联接。

select name, fromcurr_id, tocurr_id, name, exchange_rate 
from exchange_rate 
  inner join currency on exchange_rate.fromcurr_id = currency.curr_id 
                     and exchange_rate.tocurr_id = currency.curr_id;

这没有结果。

戈登·利诺夫

您需要两个joins,每种货币一个:

select er.*, cfrom.*, cto.*
from exchange_rate er inner join
     currency cfrom
     on er.fromcurr_id = cfrom.curr_id join
     current cto
     on er.tocurr_id = eto.curr_id

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将表中的两个值匹配到表sql中的另一个值

来自分类Dev

MYSQL查询将列名匹配到另一个表中的行

来自分类Dev

将表中的两个值与表sql中的另一个值进行匹配

来自分类Dev

将两个表中的数据插入到另一个表中

来自分类Dev

是否可以将一个表中的所有字段与另一个表匹配到第三个表?

来自分类Dev

如何将一个表中另一个表具有多个ID的两个表联接在一起?

来自分类Dev

MySQL选择行与另一个表中的两个匹配的联接行

来自分类Dev

SQL根据另一个表将值分配到表中

来自分类Dev

如何通过单击将数据插入到两个表中,而在另一个表中使用第一个查询ID

来自分类Dev

如何匹配两个表并将其插入到laravel 5.4中的另一个表中?

来自分类Dev

将记录从一个表随机分配到另一个表

来自分类Dev

仅将两个表比较另一个表上要考虑的最大ID

来自分类Dev

尝试通过使用另一个表中的 id 值将两个表连接在一起

来自分类Dev

如何将两个表的UNION用作另一个表中的列?

来自分类Dev

使用Django中的另一个关系表联接两个表

来自分类Dev

通过另一个表 postgresql 连接两个表中的数据

来自分类Dev

将一个文件中的值匹配到另一个文件中

来自分类Dev

当两个值不匹配时从另一个表中获取数据并替换现有值

来自分类Dev

如何使用C#连接两个表,其中一个表包含MongoDB中另一个表的ID列表

来自分类Dev

如何将一个表中的两个字段关联到另一个表中的一个字段

来自分类Dev

将一个数据库表中的行插入另一个数据库中的两个不同表中

来自分类Dev

如何动态计算另一个两个表中一个表中的行?

来自分类Dev

是否可以将两个表边框“合并”到另一个?

来自分类Dev

从一个表中找到两个与另一个表中另一个元素最接近的元素

来自分类Dev

一次将两个记录插入两个表,其中一个表使用另一个作为外键?

来自分类Dev

Python:将一个列表中的值匹配到另一列表中的值序列

来自分类Dev

根据两个表中设置的值,使用另一个表中的索引更新 MySQL 表

来自分类Dev

Django与另一个表中的两个列的关系

来自分类Dev

将两个表合并在一起,一个表中有一个ID,另一个表中有多个ID

Related 相关文章

  1. 1

    将表中的两个值匹配到表sql中的另一个值

  2. 2

    MYSQL查询将列名匹配到另一个表中的行

  3. 3

    将表中的两个值与表sql中的另一个值进行匹配

  4. 4

    将两个表中的数据插入到另一个表中

  5. 5

    是否可以将一个表中的所有字段与另一个表匹配到第三个表?

  6. 6

    如何将一个表中另一个表具有多个ID的两个表联接在一起?

  7. 7

    MySQL选择行与另一个表中的两个匹配的联接行

  8. 8

    SQL根据另一个表将值分配到表中

  9. 9

    如何通过单击将数据插入到两个表中,而在另一个表中使用第一个查询ID

  10. 10

    如何匹配两个表并将其插入到laravel 5.4中的另一个表中?

  11. 11

    将记录从一个表随机分配到另一个表

  12. 12

    仅将两个表比较另一个表上要考虑的最大ID

  13. 13

    尝试通过使用另一个表中的 id 值将两个表连接在一起

  14. 14

    如何将两个表的UNION用作另一个表中的列?

  15. 15

    使用Django中的另一个关系表联接两个表

  16. 16

    通过另一个表 postgresql 连接两个表中的数据

  17. 17

    将一个文件中的值匹配到另一个文件中

  18. 18

    当两个值不匹配时从另一个表中获取数据并替换现有值

  19. 19

    如何使用C#连接两个表,其中一个表包含MongoDB中另一个表的ID列表

  20. 20

    如何将一个表中的两个字段关联到另一个表中的一个字段

  21. 21

    将一个数据库表中的行插入另一个数据库中的两个不同表中

  22. 22

    如何动态计算另一个两个表中一个表中的行?

  23. 23

    是否可以将两个表边框“合并”到另一个?

  24. 24

    从一个表中找到两个与另一个表中另一个元素最接近的元素

  25. 25

    一次将两个记录插入两个表,其中一个表使用另一个作为外键?

  26. 26

    Python:将一个列表中的值匹配到另一列表中的值序列

  27. 27

    根据两个表中设置的值,使用另一个表中的索引更新 MySQL 表

  28. 28

    Django与另一个表中的两个列的关系

  29. 29

    将两个表合并在一起,一个表中有一个ID,另一个表中有多个ID

热门标签

归档