Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从postgresql中的相关表获取数据_Sql_Postgresql - Fatal编程技术网

从postgresql中的相关表获取数据

从postgresql中的相关表获取数据,sql,postgresql,Sql,Postgresql,假设这3张表 创建表项( item_id整数不为空主键, 名称varchar(50)不为空, 说明varchar(150)不为空, 库存整数不为空 ) 创建表客户( 客户id VARCHAR(9)主键不为空, 名称VARCHAR(50)不为空, lastname VARCHAR(50)不为空, 电话VARCHAR(15)不为空, 加入日期不为空 ) 创建表购买( 采购id整数参考项目, 客户id varchar(9)参考客户, 购买日期时间戳不为空, 金额整数不为空, 主键(采购id、客户id、

假设这3张表

创建表项(
item_id整数不为空主键,
名称varchar(50)不为空,
说明varchar(150)不为空,
库存整数不为空
)
创建表客户(
客户id VARCHAR(9)主键不为空,
名称VARCHAR(50)不为空,
lastname VARCHAR(50)不为空,
电话VARCHAR(15)不为空,
加入日期不为空
)
创建表购买(
采购id整数参考项目,
客户id varchar(9)参考客户,
购买日期时间戳不为空,
金额整数不为空,
主键(采购id、客户id、采购日期)
)
  • 我如何获得每个唯一的名称和购买的物品总数
  • 我怎样才能获得每个购买名称以及买家的姓名和姓氏
  • 我怎样才能得到每一件商品以及售出了多少

您希望学习的两个主题是如何使用分组方式和如何联接表。下面的示例(或多或少)回答了您的第一个问题,并使用了两种工具:

select 
  C.customer_id as customer_id,
  max(C.name) as customer_name,
  sum(amount) as total_amount
from customer C
left join purchase P on C.customer_id = P.customer_id
group by C.customer_id