postgresql-表的左连接、聚集函数、group by

本文介绍了PostgreSQL中不同类型的连接操作,包括简单的连接、左连接,并展示了如何使用聚集函数进行数据汇总。通过具体示例,读者可以了解如何在实际应用中运用这些SQL技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

声明:本PostgreSQl实用指南系列为刘兴(http://deepfuture.iteye.com/)原创,未经笔者授权,任何人和机构不能转载

连接

mydb=# select * from student,citys where student.city=citys.id;
    name    | age | city | name | id
------------+-----+------+------+----
 deepfuture |  20 |    1 | 长沙 |  1
 张三       |  21 |    1 | 长沙 |  1
 未来       |  20 |    2 | 湛江 |  2
(3 rows)


mydb=# select student.name as name,student.age as age,citys.name as city from st
udent,citys where student.city=citys.id;
    name    | age | city
------------+-----+------
 deepfuture |  20 | 长沙
 张三       |  21 | 长沙
 未来       |  20 | 湛江
(3 rows)


左连接
mydb=# select * from citys left outer join student on (student.city=citys.id)
mydb-# ;
 name | id |    name    | age | city
------+----+------------+-----+------
 长沙 |  1 | deepfuture |  20 |    1
 长沙 |  1 | 张三       |  21 |    1
 湛江 |  2 | 未来       |  20 |    2
 北京 |  3 |            |     |
(4 rows)

 聚集函数:

 


mydb=# select citys.name,count(*) as 人数 from citys,student where student.city=
citys.id group by citys.name;
 name | 人数
------+------
 长沙 |    2
 湛江 |    1
(2 rows)

mydb=#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值