postgres group by 示例 带数据
时间: 2023-12-22 09:06:03 浏览: 23
假设有如下表格 t1:
| id | name | age |
|----|------|-----|
| 1 | Tom | 20 |
| 2 | Lily | 22 |
| 3 | Sam | 20 |
| 4 | Jack | 21 |
| 5 | Amy | 22 |
现在需要按照年龄进行分组,统计每个年龄段的人数。可以使用 `GROUP BY` 语句来实现:
```sql
SELECT age, count(*) as num FROM t1 GROUP BY age;
```
执行上述 SQL 语句后,将会得到如下结果:
| age | num |
|-----|-----|
| 20 | 2 |
| 21 | 1 |
| 22 | 2 |
其中,`GROUP BY` 语句按照 `age` 字段进行分组,`count(*)` 函数统计每个组内的记录数,并使用 `as` 关键字给统计结果命名为 `num`。最终的结果按照 `age` 字段进行排序,显示每个年龄段的人数。
相关问题
postgres group by 示例
假设我们有一个表格名为 "sales",包含以下列:日期、产品、销售量和价格。我们可以使用 GROUP BY 子句来对数据进行分组,并计算每个产品销售总量和平均价格的示例如下:
```
SELECT product, SUM(quantity) as total_sales, AVG(price) as avg_price
FROM sales
GROUP BY product;
```
这将返回一个结果集,其中每一行表示一个产品,包括该产品的总销售量和平均价格。
postgres数据库中的时间数据类型
在PostgreSQL中,有以下几种时间数据类型:
1. TIMESTAMP:以YYYY-MM-DD HH:MM:SS格式存储日期和时间,精度高达微秒级别。
2. TIME:以HH:MM:SS格式存储时间,精度高达微秒级别。
3. DATE:以YYYY-MM-DD格式存储日期。
4. INTERVAL:表示时间间隔,可以表示年、月、日、小时、分钟、秒等。
5. TIMESTAMPTZ:与TIMESTAMP类似,但存储时使用UTC时间,读取时转换为当前时区的时间。
6. TIMETZ:与TIME类似,但存储时使用UTC时间,读取时转换为当前时区的时间。
这些时间数据类型可以用于存储和操作时间和日期数据,方便进行时间计算和处理。