sql - 如何通过连接 PostgreSQL 中的两个表来创建 View ?

标签 sql postgresql

我是 PostgreSQL 新手,我有两个这样的表:

  1. 与会者(AttendeeId,姓名)
  2. 情侣(CoupleId、AttendeeIdMan、AttendeeIdLady)

如何创建这样的 View ?

Attendees_Couple(CoupleId, Name_Man, Name_Lady)

现在,我得出了类似下面的结果,但后来我卡住了。

CREATE VIEW Attendees_Couple AS
SELECT a."Name"
FROM "Attendees" a, "Couples" c
WHERE a."AttendeeID" = c."AttendeeIdMan"....

任何提示或帮助将不胜感激!

最佳答案

你必须加入 Attendees 两次:

CREATE VIEW "Attendees_Couple" AS
SELECT c."CoupleId",
       a1."Name" AS "Name_Man",
       a2."Name" AS "Name_Lady"
FROM "Couples" AS c
   JOIN "Attendees" AS a1 ON c."AttendeeIdMan"  = a1."AttendeeId"
   JOIN "Attendees" AS a2 ON c."AttendeeIdLady" = a2."AttendeeId";

帮自己一个忙,使用小写名称!

关于sql - 如何通过连接 PostgreSQL 中的两个表来创建 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53528173/

相关文章:

mysql - 从 EAV 中选择返回行两次

sql - 从 sql 表中查询二进制字段的一部分

sql - database/sql Tx - 检测提交或回滚

sql - 高基数字段的 Hive 查询性能

PostgreSQL:如何重新验证 CHECK

sql - Postgres 打破串行列上的空约束

node.js - Sequelize 迁移 : ERROR: Cannot read property 'toString' of undefined

django - 防止在 django 模板中呈现 unicode 字符

mysql - 触发器语法 mySQL

c# - 如何将数据从一个数据库导入到另一个数据库