在 pgadmin4 中如何编写此查询来显示共享相同地址的客户名称,例如夫妻?
我打字了;从演员中选择 name_id 和 address_id 其中姓名和地址 =2 内连接
我期望得到显示共享相同地址的客户的输出
要匹配具有相同地址的客户,请在同一张表上执行自联接。这是使用 pgAdmin4 更新的 PostgreSQL SQL 查询。根据 actor 表中的 address_id,此查询将为您提供居住在同一地址的丈夫和妻子的列表。
SELECT a1.name AS husband_name, a2.name AS wife_name, a1.address_id
FROM actor a1
JOIN actor a2 ON a1.address_id = a2.address_id AND a1.name_id < a2.name_id;
使用两个别名(a1和a2)代表丈夫和妻子,我将演员表与其自身组合起来。 为了确保两个客户具有相同的地址,我比较了 address_id 相同的行。
为了避免重复,条件 a1.name_id a2.name_id 确保每对名称仅显示一次。
希望它有效:)